[PATCH] aoe: list new maintainer for aoe driver

2019-05-17 Thread Ed Cashin
Justin Sanders, who has extensive experience with ATA over Ethernet in general and AoE SCSI and block-device drivers in particular, is ready to take on the role of aoe maintainer. The driver needs a more active maintainer. --- MAINTAINERS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)

Re: [PATCH] block: aoe: no need to check return value of debugfs_create functions

2019-01-22 Thread Ed Cashin
On Tue, Jan 22, 2019 at 6:29 PM Omar Sandoval wrote: ... > Now entry is uninitialized here when we assign it to d->debugfs. Thanks for noticing that.

Re: [PATCH v3] aoe: document sysfs interface

2018-02-19 Thread Ed Cashin
On 02/19/2018 01:16 PM, Aishwarya Pant wrote: Documentation has been compiled from git commit logs and descriptions in Documentation/aoe/aoe.txt. This should be useful for scripting and tracking changes in the ABI. I don't see any problems with v3. Thank you. -- Ed

Re: [PATCH v3] aoe: document sysfs interface

2018-02-19 Thread Ed Cashin
On 02/19/2018 01:16 PM, Aishwarya Pant wrote: Documentation has been compiled from git commit logs and descriptions in Documentation/aoe/aoe.txt. This should be useful for scripting and tracking changes in the ABI. I don't see any problems with v3. Thank you. -- Ed

Re: [PATCH] aoe: document sysfs interface

2018-02-17 Thread Ed Cashin
> On Feb 17, 2018, at 9:37 AM, Julia Lawall <julia.law...@lip6.fr> wrote: > > > >> On Fri, 16 Feb 2018, Ed Cashin wrote: >> >>> On 02/16/2018 10:39 AM, Aishwarya Pant wrote: >>> Documentation has been compiled from git commit logs and descriptio

Re: [PATCH] aoe: document sysfs interface

2018-02-17 Thread Ed Cashin
> On Feb 17, 2018, at 9:37 AM, Julia Lawall wrote: > > > >> On Fri, 16 Feb 2018, Ed Cashin wrote: >> >>> On 02/16/2018 10:39 AM, Aishwarya Pant wrote: >>> Documentation has been compiled from git commit logs and descriptions in >>&g

Re: [PATCH] aoe: document sysfs interface

2018-02-16 Thread Ed Cashin
On 02/16/2018 10:39 AM, Aishwarya Pant wrote: Documentation has been compiled from git commit logs and descriptions in Documentation/aoe/aoe.txt. This should be useful for scripting and tracking changes in the ABI. ... +What: /sys/block/etherd*/netif ... +Description: +

Re: [PATCH] aoe: document sysfs interface

2018-02-16 Thread Ed Cashin
On 02/16/2018 10:39 AM, Aishwarya Pant wrote: Documentation has been compiled from git commit logs and descriptions in Documentation/aoe/aoe.txt. This should be useful for scripting and tracking changes in the ABI. ... +What: /sys/block/etherd*/netif ... +Description: +

Re: [PATCH] block: aoenet: Replace GFP_ATOMIC with GFP_KERNEL in aoenet_rcv

2018-01-28 Thread Ed Cashin
Good luck in your efforts, and thanks for your work on static analysis. > On Jan 27, 2018, at 9:12 PM, Jia-Ju Bai <baijiaju1...@gmail.com> wrote: > > > >> On 2018/1/28 1:48, Ed Cashin wrote: >> If the tool cannot tell whether the protected state is manipulated

Re: [PATCH] block: aoenet: Replace GFP_ATOMIC with GFP_KERNEL in aoenet_rcv

2018-01-28 Thread Ed Cashin
Good luck in your efforts, and thanks for your work on static analysis. > On Jan 27, 2018, at 9:12 PM, Jia-Ju Bai wrote: > > > >> On 2018/1/28 1:48, Ed Cashin wrote: >> If the tool cannot tell whether the protected state is manipulated by >> *another* piece of

Re: [PATCH] block: aoenet: Replace GFP_ATOMIC with GFP_KERNEL in aoenet_rcv

2018-01-27 Thread Ed Cashin
If the tool cannot tell whether the protected state is manipulated by *another* piece of code called in atomic context, then it's insufficient. > On Jan 26, 2018, at 4:37 AM, Jia-Ju Bai wrote: > > After checking all possible call chains to aoenet_rcv(), > my tool finds

Re: [PATCH] block: aoenet: Replace GFP_ATOMIC with GFP_KERNEL in aoenet_rcv

2018-01-27 Thread Ed Cashin
If the tool cannot tell whether the protected state is manipulated by *another* piece of code called in atomic context, then it's insufficient. > On Jan 26, 2018, at 4:37 AM, Jia-Ju Bai wrote: > > After checking all possible call chains to aoenet_rcv(), > my tool finds that aoenet_rcv() is

Re: [PATCH] [RESEND] aoe: use ktime_t instead of timeval

2018-01-17 Thread Ed Cashin
On 01/17/2018 10:41 AM, Jens Axboe wrote: ... Applied, thanks Arnd/Tina. Thank you for the CC. Sorry for the lack of response in November. -- Ed

Re: [PATCH] [RESEND] aoe: use ktime_t instead of timeval

2018-01-17 Thread Ed Cashin
On 01/17/2018 10:41 AM, Jens Axboe wrote: ... Applied, thanks Arnd/Tina. Thank you for the CC. Sorry for the lack of response in November. -- Ed

Re: [PATCH] block/aoe: discover_timer: Convert timers to use timer_setup()

2017-11-03 Thread Ed Cashin
On 11/02/2017 07:31 PM, Kees Cook wrote: In preparation for unconditionally passing the struct timer_list pointer to all timer callbacks, switch to using the new timer_setup() and from_timer() to pass the timer pointer explicitly. This refactors the discover_timer to remove the needless locking

Re: [PATCH] block/aoe: discover_timer: Convert timers to use timer_setup()

2017-11-03 Thread Ed Cashin
On 11/02/2017 07:31 PM, Kees Cook wrote: In preparation for unconditionally passing the struct timer_list pointer to all timer callbacks, switch to using the new timer_setup() and from_timer() to pass the timer pointer explicitly. This refactors the discover_timer to remove the needless locking

Re: [PATCH] aoe: use setup_timer

2017-03-25 Thread Ed Cashin
On 03/24/2017 10:15 AM, Geliang Tang wrote: Use setup_timer() instead of init_timer() to simplify the code. Signed-off-by: Geliang Tang --- drivers/block/aoe/aoemain.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/drivers/block/aoe/aoemain.c

Re: [PATCH] aoe: use setup_timer

2017-03-25 Thread Ed Cashin
On 03/24/2017 10:15 AM, Geliang Tang wrote: Use setup_timer() instead of init_timer() to simplify the code. Signed-off-by: Geliang Tang --- drivers/block/aoe/aoemain.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/drivers/block/aoe/aoemain.c

Re: [PATCH 06/15] genhd: Add return code to device_add_disk

2016-08-17 Thread Ed Cashin
On 08/17/2016 05:14 AM, Fam Zheng wrote: ... Of course, the plan is to write patches on top. I'm not cleaning up anything here because I'm concerned callers may double free (and I didn't look hard into that). Aside from Huck's concerns, the changes looked OK from aoe's perspective. -- Ed

Re: [PATCH 06/15] genhd: Add return code to device_add_disk

2016-08-17 Thread Ed Cashin
On 08/17/2016 05:14 AM, Fam Zheng wrote: ... Of course, the plan is to write patches on top. I'm not cleaning up anything here because I'm concerned callers may double free (and I didn't look hard into that). Aside from Huck's concerns, the changes looked OK from aoe's perspective. -- Ed

Re: [PATCH v2 05/12] aoeblk: Generate uevent after attribute available

2016-06-30 Thread Ed Cashin
On 06/29/2016 09:59 PM, Fam Zheng wrote: It is documented that KOBJ_ADD should be generated after the object's attributes and children are ready. We can achieve this with the new disk_gen_uevents interface. Looks like an improvement, thanks! -- Ed

Re: [PATCH v2 05/12] aoeblk: Generate uevent after attribute available

2016-06-30 Thread Ed Cashin
On 06/29/2016 09:59 PM, Fam Zheng wrote: It is documented that KOBJ_ADD should be generated after the object's attributes and children are ready. We can achieve this with the new disk_gen_uevents interface. Looks like an improvement, thanks! -- Ed

Re: [PATCH] aoe: remove unnecessary check for failing kthread creation

2016-02-02 Thread Ed Cashin
On 02/01/2016 10:53 AM, Insu Yun wrote: When kthread_run fails, it returns ERR, not NULL. Therefore, NULL checking is redundant. (https://www.kernel.org/doc/htmldocs/device-drivers/API-kthread-run.html) Thanks, the change looks reasonable. ... task = kthread_run(kthread, k, "%s",

Re: [PATCH] aoe: remove unnecessary check for failing kthread creation

2016-02-02 Thread Ed Cashin
On 02/01/2016 10:53 AM, Insu Yun wrote: When kthread_run fails, it returns ERR, not NULL. Therefore, NULL checking is redundant. (https://www.kernel.org/doc/htmldocs/device-drivers/API-kthread-run.html) Thanks, the change looks reasonable. ... task = kthread_run(kthread, k, "%s",

Re: [PATCH 09/39] aoe: drop null test before destroy functions

2015-09-14 Thread Ed Cashin
ACK. Thanks. On 09/13/2015 08:15 AM, Julia Lawall wrote: Remove unneeded NULL test. The semantic patch that makes this change is as follows: (http://coccinelle.lip6.fr/) // @@ expression x; @@ -if (x != NULL) \(kmem_cache_destroy\|mempool_destroy\|dma_pool_destroy\)(x); //

Re: [PATCH 09/39] aoe: drop null test before destroy functions

2015-09-14 Thread Ed Cashin
ACK. Thanks. On 09/13/2015 08:15 AM, Julia Lawall wrote: Remove unneeded NULL test. The semantic patch that makes this change is as follows: (http://coccinelle.lip6.fr/) // @@ expression x; @@ -if (x != NULL) \(kmem_cache_destroy\|mempool_destroy\|dma_pool_destroy\)(x); //

Re: [PATCH 1/2] Revert "block: remove artifical max_hw_sectors cap"

2015-08-14 Thread Ed Cashin
ACK. On 08/13/2015 02:57 PM, Jeff Moyer wrote: This reverts commit 34b48db66e08ca1c1bc07cf305d672ac940268dc. That commit caused performance regressions for streaming I/O workloads on a number of different storage devices, from SATA disks to external RAID arrays. It also managed to trip up some

Re: [PATCH 1/2] Revert block: remove artifical max_hw_sectors cap

2015-08-14 Thread Ed Cashin
ACK. On 08/13/2015 02:57 PM, Jeff Moyer wrote: This reverts commit 34b48db66e08ca1c1bc07cf305d672ac940268dc. That commit caused performance regressions for streaming I/O workloads on a number of different storage devices, from SATA disks to external RAID arrays. It also managed to trip up some

Re: [PATCH] aoe: Convert use of __constant_ to

2015-06-19 Thread Ed Cashin
OK. Thanks. On 06/18/2015 11:15 PM, Vaishali Thakkar wrote: In little endian cases, the macros htons and cpu_to_be16 unfolds to __swab16 which provides special case for constants. In big endian cases, __constant_htons and htons expand directly to the same expression. The same applies for

Re: [PATCH] aoe: Convert use of __constant_htons to htons

2015-06-19 Thread Ed Cashin
OK. Thanks. On 06/18/2015 11:23 PM, Vaishali Thakkar wrote: In little endian cases, the macro htons unfolds to __swab16 which provides special case for constants. In big endian cases, __constant_htons and htons expand directly to the same expression. So, replace __constant_htons with htons

Re: [PATCH] aoe: Convert use of __constant_foo to foo

2015-06-19 Thread Ed Cashin
OK. Thanks. On 06/18/2015 11:15 PM, Vaishali Thakkar wrote: In little endian cases, the macros htons and cpu_to_be16 unfolds to __swab16 which provides special case for constants. In big endian cases, __constant_htons and htons expand directly to the same expression. The same applies for

Re: [PATCH] aoe: Convert use of __constant_htons to htons

2015-06-19 Thread Ed Cashin
OK. Thanks. On 06/18/2015 11:23 PM, Vaishali Thakkar wrote: In little endian cases, the macro htons unfolds to __swab16 which provides special case for constants. In big endian cases, __constant_htons and htons expand directly to the same expression. So, replace __constant_htons with htons

Re: [Y2038] [PATCH] aoe: Use 64-bit timestamp in frame

2015-05-13 Thread Ed Cashin
On 05/13/2015 04:04 AM, Arnd Bergmann wrote: ... Shall we do the ktime_get_us() approach then? It still requires a 32-bit division like do_gettimeofday(), so it will not be as efficient as the shifted nanoseconds. It's no worse, though, right? So I think it's a good transition. Further

Re: [Y2038] [PATCH] aoe: Use 64-bit timestamp in frame

2015-05-13 Thread Ed Cashin
On 05/13/2015 04:04 AM, Arnd Bergmann wrote: ... Shall we do the ktime_get_us() approach then? It still requires a 32-bit division like do_gettimeofday(), so it will not be as efficient as the shifted nanoseconds. It's no worse, though, right? So I think it's a good transition. Further

Re: [PATCH] aoe: Use 64-bit timestamp in frame

2015-05-12 Thread Ed Cashin
On 05/12/2015 05:44 AM, Arnd Bergmann wrote: On Monday 11 May 2015 21:00:25 Ed Cashin wrote: ... In that case, there is still information about the timing embedded in the AoE tag. The send time in jiffies is a rough-grained record of the send time, and it's extracted from the tag

Re: [Y2038] [PATCH] aoe: Use 64-bit timestamp in frame

2015-05-12 Thread Ed Cashin
On 05/12/2015 07:14 AM, Arnd Bergmann wrote: On Tuesday 12 May 2015 11:44:21 Arnd Bergmann wrote: There are of course multiple ways to do this. One way would be to change the code to work on 32-bit nanoseconds instead of 32-bit microseconds. This requires proving that the we cannot exceed 4.29

Re: [PATCH] aoe: Use 64-bit timestamp in frame

2015-05-12 Thread Ed Cashin
Thanks for the expanded motivation. I'll return to your ideas tonight, but I wanted to mention that it is possible for round trips to take well over five seconds, partly because the disk on the target might be resetting. If the rough-grained mechanism in the AoE tag still works, though, that's

Re: [Y2038] [PATCH] aoe: Use 64-bit timestamp in frame

2015-05-12 Thread Ed Cashin
On 05/12/2015 07:14 AM, Arnd Bergmann wrote: On Tuesday 12 May 2015 11:44:21 Arnd Bergmann wrote: There are of course multiple ways to do this. One way would be to change the code to work on 32-bit nanoseconds instead of 32-bit microseconds. This requires proving that the we cannot exceed 4.29

Re: [PATCH] aoe: Use 64-bit timestamp in frame

2015-05-12 Thread Ed Cashin
On 05/12/2015 05:44 AM, Arnd Bergmann wrote: On Monday 11 May 2015 21:00:25 Ed Cashin wrote: ... In that case, there is still information about the timing embedded in the AoE tag. The send time in jiffies is a rough-grained record of the send time, and it's extracted from the tag

Re: [PATCH] aoe: Use 64-bit timestamp in frame

2015-05-12 Thread Ed Cashin
Thanks for the expanded motivation. I'll return to your ideas tonight, but I wanted to mention that it is possible for round trips to take well over five seconds, partly because the disk on the target might be resetting. If the rough-grained mechanism in the AoE tag still works, though, that's

Re: [PATCH] aoe: Use 64-bit timestamp in frame

2015-05-11 Thread Ed Cashin
First, thanks for the patch. I do appreciate the attempt to simplify this part of the driver, but I don't think that this patch is good to merge. I'll make some comments inline below. On 05/10/2015 10:35 PM, Tina Ruchandani wrote: 'struct frame' uses two variables to store the sent timestamp

Re: [PATCH] aoe: Use 64-bit timestamp in frame

2015-05-11 Thread Ed Cashin
I would like to see some performance measurements for this patch on a system with fast storage and multiple 10 GbE links. If not, at least a good analysis of the expected performance impact the patch will have on major architectures. Tonight I will think about whether the 2038 thing even

Re: [PATCH] aoe: Use 64-bit timestamp in frame

2015-05-11 Thread Ed Cashin
First, thanks for the patch. I do appreciate the attempt to simplify this part of the driver, but I don't think that this patch is good to merge. I'll make some comments inline below. On 05/10/2015 10:35 PM, Tina Ruchandani wrote: 'struct frame' uses two variables to store the sent timestamp

Re: [PATCH] aoe: Use 64-bit timestamp in frame

2015-05-11 Thread Ed Cashin
I would like to see some performance measurements for this patch on a system with fast storage and multiple 10 GbE links. If not, at least a good analysis of the expected performance impact the patch will have on major architectures. Tonight I will think about whether the 2038 thing even

[PATCH] aoe: Update aoe maintainer information

2015-03-14 Thread Ed Cashin
The coraid.com email address is defunct. The old aoe support area hosted at coraid.com is no longer up. These changes update the email and website to current ones. Signed-off-by: Ed Cashin --- The docs need updating as well, but I want to fix the email before tackling that. MAINTAINERS | 4

[PATCH] aoe: Update aoe maintainer information

2015-03-14 Thread Ed Cashin
The coraid.com email address is defunct. The old aoe support area hosted at coraid.com is no longer up. These changes update the email and website to current ones. Signed-off-by: Ed Cashin ed.cas...@acm.org --- The docs need updating as well, but I want to fix the email before tackling

Re: [PATCH] incorrect use of init_completion fixup

2014-12-23 Thread Ed Cashin
return -ENOMEM; > k->task = task; > wait_for_completion(>rendez); /* allow kthread to start */ > - init_completion(>rendez);/* for waiting for exit later */ > + reinit_completion(>rendez); /* for waiting for exit later */ &

Re: [PATCH] incorrect use of init_completion fixup

2014-12-23 Thread Ed Cashin
-task = task; wait_for_completion(k-rendez); /* allow kthread to start */ - init_completion(k-rendez);/* for waiting for exit later */ + reinit_completion(k-rendez); /* for waiting for exit later */ return 0; } That looks good to me, thanks. -- Ed Cashin ecas

[PATCH 2/2] aoe: remove do-nothing NAME="%k" term from example udev rules

2013-08-28 Thread Ed Cashin
/etc/udev/rules.d/60-aoe.rules:26 Removing the term does not cause any problems with the creation of the special character and block device nodes. Signed-off-by: Ed Cashin --- Documentation/aoe/udev.txt |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/Documentation/aoe/

[PATCH 0/2] aoe: remove too-strict BUG from aoedev teardown and update udev example

2013-08-28 Thread Ed Cashin
This patch series applies to linux-next/akpm fetched 22 August, commit a187db44dd9b24a9eed2141af962306a36935423. Yesterday's linux-next/akpm has no updates to the aoe files that could conflict, though. Ed L. Cashin (2): aoe: do not BUG if memory pressure prevented debugfs file creation aoe:

[PATCH 1/2] aoe: do not BUG if memory pressure prevented debugfs file creation

2013-08-28 Thread Ed Cashin
If the system has trouble allocating memory for the creation of the aoe debugfs directory or of a file inside it, the debugfs member of an aoedev can be NULL. Do not treat a NULL debugfs pointer as a BUG on aoedev shutdown, avoiding the user impact of an unecessary panic. Signed-off-by: Ed

[PATCH 1/2] aoe: do not BUG if memory pressure prevented debugfs file creation

2013-08-28 Thread Ed Cashin
If the system has trouble allocating memory for the creation of the aoe debugfs directory or of a file inside it, the debugfs member of an aoedev can be NULL. Do not treat a NULL debugfs pointer as a BUG on aoedev shutdown, avoiding the user impact of an unecessary panic. Signed-off-by: Ed

[PATCH 0/2] aoe: remove too-strict BUG from aoedev teardown and update udev example

2013-08-28 Thread Ed Cashin
This patch series applies to linux-next/akpm fetched 22 August, commit a187db44dd9b24a9eed2141af962306a36935423. Yesterday's linux-next/akpm has no updates to the aoe files that could conflict, though. Ed L. Cashin (2): aoe: do not BUG if memory pressure prevented debugfs file creation aoe:

[PATCH 2/2] aoe: remove do-nothing NAME=%k term from example udev rules

2013-08-28 Thread Ed Cashin
/rules.d/60-aoe.rules:26 Removing the term does not cause any problems with the creation of the special character and block device nodes. Signed-off-by: Ed Cashin ecas...@coraid.com --- Documentation/aoe/udev.txt |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/Documentation

Re: [PATCH] aoe: suppress compiler warnings

2013-08-26 Thread Ed Cashin
struct aoetgt *t; > ^ Looks good, thanks. -- Ed Cashin ecas...@coraid.com -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.ht

Re: [PATCH] aoe: suppress compiler warnings

2013-08-26 Thread Ed Cashin
; ^ Looks good, thanks. -- Ed Cashin ecas...@coraid.com -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http

Re: [PATCH 04/22] block: Abstract out bvec iterator

2013-08-13 Thread Ed Cashin
On Aug 9, 2013, Ed Cashin wrote: > On Aug 8, 2013, at 9:05 PM, Kent Overstreet wrote: > ... > > It's in the for-jens branch now. > > > Just examining the patches, I like the way it cleans up the aoe code. I > had a question about a new BUG added by the for-jens br

Re: [PATCH 04/22] block: Abstract out bvec iterator

2013-08-13 Thread Ed Cashin
On Aug 9, 2013, Ed Cashin wrote: On Aug 8, 2013, at 9:05 PM, Kent Overstreet wrote: ... It's in the for-jens branch now. Just examining the patches, I like the way it cleans up the aoe code. I had a question about a new BUG added by the for-jens branch the read-response handling path

Re: [PATCH 04/22] block: Abstract out bvec iterator

2013-08-09 Thread Ed Cashin
seems like it would be better to treat that case as another indication of a problem with the target that gets logged when the AoE response is ignored, just as happens for "runt data size". That way people working on or trying out experimental AoE targets don't panic the initiator syste

Re: [PATCH 04/22] block: Abstract out bvec iterator

2013-08-09 Thread Ed Cashin
with the target that gets logged when the AoE response is ignored, just as happens for runt data size. That way people working on or trying out experimental AoE targets don't panic the initiator system. -- Ed Cashin ecas...@coraid.com -- To unsubscribe from this list: send the line unsubscribe

Re: [PATCH 04/22] block: Abstract out bvec iterator

2013-08-08 Thread Ed Cashin
On Aug 8, 2013, at 8:09 PM, Kent Overstreet wrote: > On Wed, Aug 07, 2013 at 10:04:36PM -0400, Ed Cashin wrote: >> On Aug 7, 2013, at 5:54 PM, Kent Overstreet wrote: >> >>> Immutable biovecs are going to require an explicit iterator. To >>> implement immuta

Re: [PATCH] aoe: adjust ref of head for compound page tails

2013-08-08 Thread Ed Cashin
On Aug 8, 2013, at 3:56 PM, Andrew Morton wrote: > On Wed, 7 Aug 2013 20:50:09 -0400 Ed Cashin wrote: ... >> When the workaround was created, it was with the assumption that the >> zero-count pages are not always tail pages, and that seemed to be the case >> in 2007, b

Re: [PATCH] aoe: adjust ref of head for compound page tails

2013-08-08 Thread Ed Cashin
On Aug 8, 2013, at 3:56 PM, Andrew Morton wrote: On Wed, 7 Aug 2013 20:50:09 -0400 Ed Cashin ecas...@coraid.com wrote: ... When the workaround was created, it was with the assumption that the zero-count pages are not always tail pages, and that seemed to be the case in 2007, but as I said

Re: [PATCH 04/22] block: Abstract out bvec iterator

2013-08-08 Thread Ed Cashin
On Aug 8, 2013, at 8:09 PM, Kent Overstreet wrote: On Wed, Aug 07, 2013 at 10:04:36PM -0400, Ed Cashin wrote: On Aug 7, 2013, at 5:54 PM, Kent Overstreet wrote: Immutable biovecs are going to require an explicit iterator. To implement immutable bvecs, a later patch is going to add

Re: [PATCH] aoe: adjust ref of head for compound page tails

2013-08-07 Thread Ed Cashin
On Aug 7, 2013, at 8:05 PM, Andrew Morton wrote: > On Wed, 7 Aug 2013 19:54:45 -0400 Ed Cashin wrote: > >>> +bio_pageinc(struct bio *bio) >>> +{ >>> + struct bio_vec *bv; >>> + struct page *page; >>> + int i

Re: [PATCH] aoe: adjust ref of head for compound page tails

2013-08-07 Thread Ed Cashin
On Aug 7, 2013, at 7:35 PM, Andrew Morton wrote: > On Wed, 7 Aug 2013 19:27:40 -0400 Ed Cashin wrote: > >> On Aug 7, 2013, at 5:26 PM, Andrew Morton wrote: >> >>> On Wed, 7 Aug 2013 17:21:32 -0400 Ed Cashin wrote: >> ... >>>> Sorry. I tried

Re: [PATCH] aoe: adjust ref of head for compound page tails

2013-08-07 Thread Ed Cashin
On Aug 7, 2013, at 7:41 PM, Ed Cashin wrote: > It sounds like it's wrong to give block pages with a zero count, so why not > just have aoe BUG_ON(compound_trans_head(bv->page->_count) == 0) until we're > sure nobody does that anymore? Ugh. I goofed the parens and such. I m

Re: [PATCH] aoe: adjust ref of head for compound page tails

2013-08-07 Thread Ed Cashin
On Aug 7, 2013, at 5:27 PM, Andrew Morton wrote: > On Wed, 7 Aug 2013 14:18:35 -0700 Andrew Morton > wrote: > >> On Wed, 7 Aug 2013 17:12:36 -0400 Ed Cashin wrote: >> >>> >>> On Aug 7, 2013, at 4:58 PM, Andrew Morton wrote: >>> >>

Re: [PATCH] aoe: adjust ref of head for compound page tails

2013-08-07 Thread Ed Cashin
On Aug 7, 2013, at 5:26 PM, Andrew Morton wrote: > On Wed, 7 Aug 2013 17:21:32 -0400 Ed Cashin wrote: ... >> Sorry. I tried to cover that but maybe should have separated it more >> clearly from the running text. >> >> The patch changes the current behavior encounte

Re: [PATCH] aoe: adjust ref of head for compound page tails

2013-08-07 Thread Ed Cashin
On Aug 7, 2013, at 5:00 PM, Andrew Morton wrote: > On Thu, 1 Aug 2013 21:29:59 -0400 Ed Cashin wrote: > >> As discussed previously, the fact that some users of the block >> layer provide bios that point to pages with a zero _count means >> that it is not OK for

Re: [PATCH] aoe: adjust ref of head for compound page tails

2013-08-07 Thread Ed Cashin
On Aug 7, 2013, at 4:58 PM, Andrew Morton wrote: > On Thu, 1 Aug 2013 21:29:59 -0400 Ed Cashin wrote: > >> As discussed previously, > > I think I missed that. > >> the fact that some users of the block >> layer provide bios that point to pages with a zero

Re: [PATCH] aoe: adjust ref of head for compound page tails

2013-08-07 Thread Ed Cashin
On Aug 7, 2013, at 4:58 PM, Andrew Morton wrote: On Thu, 1 Aug 2013 21:29:59 -0400 Ed Cashin ecas...@coraid.com wrote: As discussed previously, I think I missed that. the fact that some users of the block layer provide bios that point to pages with a zero _count means

Re: [PATCH] aoe: adjust ref of head for compound page tails

2013-08-07 Thread Ed Cashin
On Aug 7, 2013, at 5:00 PM, Andrew Morton wrote: On Thu, 1 Aug 2013 21:29:59 -0400 Ed Cashin ecas...@coraid.com wrote: As discussed previously, the fact that some users of the block layer provide bios that point to pages with a zero _count means that it is not OK for the network layer to do

Re: [PATCH] aoe: adjust ref of head for compound page tails

2013-08-07 Thread Ed Cashin
On Aug 7, 2013, at 5:26 PM, Andrew Morton wrote: On Wed, 7 Aug 2013 17:21:32 -0400 Ed Cashin ecas...@coraid.com wrote: ... Sorry. I tried to cover that but maybe should have separated it more clearly from the running text. The patch changes the current behavior encountered with direct I/O

Re: [PATCH] aoe: adjust ref of head for compound page tails

2013-08-07 Thread Ed Cashin
On Aug 7, 2013, at 5:27 PM, Andrew Morton wrote: On Wed, 7 Aug 2013 14:18:35 -0700 Andrew Morton a...@linux-foundation.org wrote: On Wed, 7 Aug 2013 17:12:36 -0400 Ed Cashin ecas...@coraid.com wrote: On Aug 7, 2013, at 4:58 PM, Andrew Morton wrote: On Thu, 1 Aug 2013 21:29:59 -0400

Re: [PATCH] aoe: adjust ref of head for compound page tails

2013-08-07 Thread Ed Cashin
On Aug 7, 2013, at 7:41 PM, Ed Cashin wrote: It sounds like it's wrong to give block pages with a zero count, so why not just have aoe BUG_ON(compound_trans_head(bv-page-_count) == 0) until we're sure nobody does that anymore? Ugh. I goofed the parens and such. I meant, BUG_ON

Re: [PATCH] aoe: adjust ref of head for compound page tails

2013-08-07 Thread Ed Cashin
On Aug 7, 2013, at 7:35 PM, Andrew Morton wrote: On Wed, 7 Aug 2013 19:27:40 -0400 Ed Cashin ecas...@coraid.com wrote: On Aug 7, 2013, at 5:26 PM, Andrew Morton wrote: On Wed, 7 Aug 2013 17:21:32 -0400 Ed Cashin ecas...@coraid.com wrote: ... Sorry. I tried to cover that but maybe should

Re: [PATCH] aoe: adjust ref of head for compound page tails

2013-08-07 Thread Ed Cashin
On Aug 7, 2013, at 8:05 PM, Andrew Morton wrote: On Wed, 7 Aug 2013 19:54:45 -0400 Ed Cashin ecas...@coraid.com wrote: +bio_pageinc(struct bio *bio) +{ + struct bio_vec *bv; + struct page *page; + int i; + + bio_for_each_segment(bv, bio, i

[PATCH] aoe: adjust ref of head for compound page tails

2013-08-01 Thread Ed Cashin
head alone for the duration between the submission of the bio and its completion, whether successful or not. Signed-off-by: Ed Cashin --- drivers/block/aoe/aoecmd.c | 17 +++-- 1 files changed, 7 insertions(+), 10 deletions(-) diff --git a/drivers/block/aoe/aoecmd.c b/drivers/block

[PATCH] aoe: respect compound page reference tracking expectations

2013-08-01 Thread Ed Cashin
This patch series applies to today's linux-next/akpm, commit 651e600ff3ecc4ac06747313a1c49d89a9ce988e. Ed L. Cashin (1): aoe: adjust ref of head for compound page tails drivers/block/aoe/aoecmd.c | 17 +++-- 1 files changed, 7 insertions(+), 10 deletions(-) -- To unsubscribe

Re: [PATCH 2/2] aoe: use min() to simplify the code

2013-08-01 Thread Ed Cashin
if (!d->gd) > return 0; > p = kbasename(d->gd->disk_name); > - lim = sizeof(d->gd->disk_name); > - lim -= p - d->gd->disk_name; > - if (slen < lim) > - lim = slen; > + lim = min(sizeof(d->gd->di

Re: [PATCH 1/2] aoe: remove custom implementation of kbasename()

2013-08-01 Thread Ed Cashin
char *p; > size_t lim; > > if (!d->gd) > return 0; > - p = strrchr(d->gd->disk_name, '/'); > - if (!p) > - p = d->gd->disk_name; > - else > - p += 1; > + p = kbasename(d->gd->disk_name

Re: [PATCH 1/2] aoe: remove custom implementation of kbasename()

2013-08-01 Thread Ed Cashin
lim) -- 1.8.3.2 -- Ed Cashin ecas...@coraid.com -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org

Re: [PATCH 2/2] aoe: use min() to simplify the code

2013-08-01 Thread Ed Cashin
); } -- 1.8.3.2 -- Ed Cashin ecas...@coraid.com -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

[PATCH] aoe: adjust ref of head for compound page tails

2013-08-01 Thread Ed Cashin
head alone for the duration between the submission of the bio and its completion, whether successful or not. Signed-off-by: Ed Cashin ecas...@coraid.com --- drivers/block/aoe/aoecmd.c | 17 +++-- 1 files changed, 7 insertions(+), 10 deletions(-) diff --git a/drivers/block/aoe/aoecmd.c

[PATCH] aoe: respect compound page reference tracking expectations

2013-08-01 Thread Ed Cashin
This patch series applies to today's linux-next/akpm, commit 651e600ff3ecc4ac06747313a1c49d89a9ce988e. Ed L. Cashin (1): aoe: adjust ref of head for compound page tails drivers/block/aoe/aoecmd.c | 17 +++-- 1 files changed, 7 insertions(+), 10 deletions(-) -- To unsubscribe

[PATCH 6/6] aoe: update internal version number to 85

2013-07-23 Thread Ed Cashin
Signed-off-by: Ed Cashin --- drivers/block/aoe/aoe.h |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/drivers/block/aoe/aoe.h b/drivers/block/aoe/aoe.h index b1f24c5..14a9d19 100644 --- a/drivers/block/aoe/aoe.h +++ b/drivers/block/aoe/aoe.h @@ -1,5 +1,5 @@ /* Copyright

[PATCH 5/6] aoe: update copyright date

2013-07-23 Thread Ed Cashin
Signed-off-by: Ed Cashin --- drivers/block/aoe/aoeblk.c |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/drivers/block/aoe/aoeblk.c b/drivers/block/aoe/aoeblk.c index b58cbeb..d63dcf0 100644 --- a/drivers/block/aoe/aoeblk.c +++ b/drivers/block/aoe/aoeblk.c @@ -1,4 +1,4

[PATCH 4/6] aoe: fill in per-AoE-target information for debugfs file

2013-07-23 Thread Ed Cashin
This information is presented in a compact format that has evolved for easy routine scanning by expert humans, mostly developers and support technicians helping to troubleshoot or test AoE-based systems. Signed-off-by: Ed Cashin --- drivers/block/aoe/aoeblk.c | 33

[PATCH 3/6] aoe: provide file operations for debugfs files

2013-07-23 Thread Ed Cashin
The place holder in the file contents is filled out in the following patch. Signed-off-by: Ed Cashin --- drivers/block/aoe/aoeblk.c | 25 - 1 files changed, 24 insertions(+), 1 deletions(-) diff --git a/drivers/block/aoe/aoeblk.c b/drivers/block/aoe/aoeblk.c index

[PATCH 2/6] aoe: add AoE-target files to debugfs

2013-07-23 Thread Ed Cashin
Signed-off-by: Ed Cashin --- drivers/block/aoe/aoe.h|2 ++ drivers/block/aoe/aoeblk.c | 35 +++ drivers/block/aoe/aoedev.c |1 + 3 files changed, 38 insertions(+), 0 deletions(-) diff --git a/drivers/block/aoe/aoe.h b/drivers/block/aoe/aoe.h index

[PATCH 1/6] aoe: create and destroy debugfs directory for aoe

2013-07-23 Thread Ed Cashin
Signed-off-by: Ed Cashin --- drivers/block/aoe/aoeblk.c | 10 +- 1 files changed, 9 insertions(+), 1 deletions(-) diff --git a/drivers/block/aoe/aoeblk.c b/drivers/block/aoe/aoeblk.c index 916d9ed..cb508b7 100644 --- a/drivers/block/aoe/aoeblk.c +++ b/drivers/block/aoe/aoeblk.c

[PATCH 0/6] aoe: add debugfs-based export of debug counters

2013-07-23 Thread Ed Cashin
This patch series applies to today's linux-next/akpm, commit 0c2f52fa9a7cb139617078568c48026c49927617. It adds the debugging information that the coraid.com-distributed aoe driver exports via sysfs, but instead of sysfs, it uses debugfs. With these patches applied, even without AoE targets on

[PATCH 0/6] aoe: add debugfs-based export of debug counters

2013-07-23 Thread Ed Cashin
This patch series applies to today's linux-next/akpm, commit 0c2f52fa9a7cb139617078568c48026c49927617. It adds the debugging information that the coraid.com-distributed aoe driver exports via sysfs, but instead of sysfs, it uses debugfs. With these patches applied, even without AoE targets on

[PATCH 1/6] aoe: create and destroy debugfs directory for aoe

2013-07-23 Thread Ed Cashin
Signed-off-by: Ed Cashin ecas...@coraid.com --- drivers/block/aoe/aoeblk.c | 10 +- 1 files changed, 9 insertions(+), 1 deletions(-) diff --git a/drivers/block/aoe/aoeblk.c b/drivers/block/aoe/aoeblk.c index 916d9ed..cb508b7 100644 --- a/drivers/block/aoe/aoeblk.c +++ b/drivers/block

[PATCH 2/6] aoe: add AoE-target files to debugfs

2013-07-23 Thread Ed Cashin
Signed-off-by: Ed Cashin ecas...@coraid.com --- drivers/block/aoe/aoe.h|2 ++ drivers/block/aoe/aoeblk.c | 35 +++ drivers/block/aoe/aoedev.c |1 + 3 files changed, 38 insertions(+), 0 deletions(-) diff --git a/drivers/block/aoe/aoe.h b/drivers/block

[PATCH 3/6] aoe: provide file operations for debugfs files

2013-07-23 Thread Ed Cashin
The place holder in the file contents is filled out in the following patch. Signed-off-by: Ed Cashin ecas...@coraid.com --- drivers/block/aoe/aoeblk.c | 25 - 1 files changed, 24 insertions(+), 1 deletions(-) diff --git a/drivers/block/aoe/aoeblk.c b/drivers/block/aoe

[PATCH 4/6] aoe: fill in per-AoE-target information for debugfs file

2013-07-23 Thread Ed Cashin
This information is presented in a compact format that has evolved for easy routine scanning by expert humans, mostly developers and support technicians helping to troubleshoot or test AoE-based systems. Signed-off-by: Ed Cashin ecas...@coraid.com --- drivers/block/aoe/aoeblk.c | 33

[PATCH 5/6] aoe: update copyright date

2013-07-23 Thread Ed Cashin
Signed-off-by: Ed Cashin ecas...@coraid.com --- drivers/block/aoe/aoeblk.c |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/drivers/block/aoe/aoeblk.c b/drivers/block/aoe/aoeblk.c index b58cbeb..d63dcf0 100644 --- a/drivers/block/aoe/aoeblk.c +++ b/drivers/block/aoe

[PATCH 6/6] aoe: update internal version number to 85

2013-07-23 Thread Ed Cashin
Signed-off-by: Ed Cashin ecas...@coraid.com --- drivers/block/aoe/aoe.h |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/drivers/block/aoe/aoe.h b/drivers/block/aoe/aoe.h index b1f24c5..14a9d19 100644 --- a/drivers/block/aoe/aoe.h +++ b/drivers/block/aoe/aoe.h @@ -1,5

  1   2   3   4   >