Updated: rebased on recent Linux, cc-ed maintainers per instructions
in MAINTAINERS file
>From df939b80d02bf37b21efaaef8ede86cfd39b0cb8 Mon Sep 17 00:00:00 2001
From: Anatoliy Glagolev
Date: Thu, 19 Apr 2018 15:06:06 -0600
Subject: [PATCH] bsg referencing parent module
From: Long Li
This is a best effort for estimating on how busy the ring buffer is for
that channel, based on available buffer to write in percentage. It is still
possible that at the time of actual ring buffer write, the space may not be
available due to other processes may
I see, thank you for the clarification.
On Thu, Apr 19, 2018 at 01:44:41PM -0600, Jens Axboe wrote:
> On 4/19/18 1:41 PM, Bart Van Assche wrote:
> > On Thu, 2018-04-19 at 12:13 -0700, Omar Sandoval wrote:
> >> On Thu, Apr 19, 2018 at 11:53:30AM -0700, Omar Sandoval wrote:
> >>> Thanks for the test! Applied.
> >>
> >> Side note, it's
On 4/19/18 1:13 PM, Omar Sandoval wrote:
> On Thu, Apr 19, 2018 at 11:53:30AM -0700, Omar Sandoval wrote:
>> Thanks for the test! Applied.
>
> Side note, it's unfortunate that this test takes 180 seconds to run only
> because we have to wait for the command timeout. We should be able to
> export
On 4/19/18 1:41 PM, Bart Van Assche wrote:
> On Thu, 2018-04-19 at 12:13 -0700, Omar Sandoval wrote:
>> On Thu, Apr 19, 2018 at 11:53:30AM -0700, Omar Sandoval wrote:
>>> Thanks for the test! Applied.
>>
>> Side note, it's unfortunate that this test takes 180 seconds to run only
>> because we have
On Thu, 2018-04-19 at 12:13 -0700, Omar Sandoval wrote:
> On Thu, Apr 19, 2018 at 11:53:30AM -0700, Omar Sandoval wrote:
> > Thanks for the test! Applied.
>
> Side note, it's unfortunate that this test takes 180 seconds to run only
> because we have to wait for the command timeout. We should be
On Thu, Apr 19, 2018 at 11:53:30AM -0700, Omar Sandoval wrote:
> Thanks for the test! Applied.
Side note, it's unfortunate that this test takes 180 seconds to run only
because we have to wait for the command timeout. We should be able to
export request_queue->rq_timeout writeable in sysfs. Would
> git://git.infradead.org/users/hch/misc.git proc_create
I want to ask if it is time to start using poorman function overloading
with _b_c_e(). There are millions of allocation functions for example,
all slightly difference, and people will add more. Seeing /proc interfaces
doubled like this
On Tue, Apr 17, 2018 at 11:03:37AM +0200, Steffen Maier wrote:
> Signed-off-by: Steffen Maier
> ---
> tests/scsi/004 | 59
>
> tests/scsi/004.out |3 ++
> 2 files changed, 62 insertions(+), 0 deletions(-)
>
Hi Bjorn,
On 4/18/2018 4:41 AM, Bjorn Andersson wrote:
On Mon 09 Apr 23:31 PDT 2018, Vivek Gautam wrote:
On 4/10/2018 1:39 AM, Bjorn Andersson wrote:
On Mon 09 Apr 10:38 PDT 2018, Vivek Gautam wrote:
On 4/9/2018 10:21 PM, Bjorn Andersson wrote:
On Mon 09 Apr 06:24 PDT 2018, Vivek Gautam
On Thu, Apr 19, 2018 at 02:41:04PM +0200, Christoph Hellwig wrote:
> Variant of proc_create_data that directly take a struct seq_operations
> --- a/fs/proc/internal.h
> +++ b/fs/proc/internal.h
> @@ -45,6 +45,7 @@ struct proc_dir_entry {
> const struct inode_operations *proc_iops;
>
On Thu, Apr 19, 2018 at 02:41:15PM +0200, Christoph Hellwig wrote:
> Variant of proc_create_data that directly take a seq_file show
> +struct proc_dir_entry *proc_create_net_single(const char *name, umode_t mode,
> + struct proc_dir_entry *parent,
> + int (*show)(struct
On Thu, Apr 19, 2018 at 02:41:03PM +0200, Christoph Hellwig wrote:
> Variants of proc_create{,_data} that directly take a struct seq_operations
> argument and drastically reduces the boilerplate code in the callers.
> +static int proc_seq_open(struct inode *inode, struct file *file)
> +{
> +
Hello Nicholas,
What do you think about this patch?
Thanks,
Andrei
On Wed, Mar 21, 2018 at 11:55:02PM -0700, Andrei Vagin wrote:
> There are two advantages:
> * Direct I/O allows to avoid the write-back cache, so it reduces
> affects to other processes in the system.
> * Async I/O allows to
During a recent discussion about peer-to-peer PCIe transfers it was brought
up that it would be desirable to invoke this functionality from user space.
One possible approach is to add support for an "extended copy" operation to
the block layer and to make it possible to use that functionality from
+linux-block
On Tue, Apr 17, 2018 at 1:05 PM, Anatoliy Glagolev wrote:
> Description: bsg_release may crash while decrementing reference to the
> parent device with the following stack:
>
> [16834.636216,07] Call Trace:
> ...
On Thu, 2018-04-19 at 10:10 +0200, Johannes Thumshirn wrote:
> On Wed, Apr 18, 2018 at 04:00:43PM +, Bart Van Assche wrote:
> > Thank you for having come up with this so quickly. Something I do not
> > like about this patch series is that several new very short helper functions
> > are
On 04/19/2018 07:41 AM, Christoph Hellwig wrote:
Use remove_proc_subtree to remove the whole subtree on cleanup instead
of a hand rolled list of proc entries, unwind the registration loop into
individual calls. Switch to use proc_create_single to further simplify
the code.
I'm yanking all the
On Thu, Apr 19, 2018 at 02:41:04PM +0200, Christoph Hellwig wrote:
> diff --git a/drivers/s390/cio/blacklist.c b/drivers/s390/cio/blacklist.c
> index 2a3f874a21d5..ad35cddcf6af 100644
> --- a/drivers/s390/cio/blacklist.c
> +++ b/drivers/s390/cio/blacklist.c
> @@ -391,28 +391,15 @@ static const
On 19/04/2018 14:41:27+0200, Christoph Hellwig wrote:
> And stop trying to get a reference on the submodule, procfs code deals
> with release after and unloaded module and thus removed proc entry.
>
Are you sure about that? The rtc module is not the one adding the procfs
file so I'm not sure how
Remove a couple indirections to make the code look like most other
protocols.
Signed-off-by: Christoph Hellwig
---
include/net/udp.h | 20 --
net/ipv4/udp.c | 99 +-
net/ipv4/udplite.c | 21 +++---
net/ipv6/udp.c | 30
Variants of proc_create{,_data} that directly take a struct seq_operations
argument and drastically reduces the boilerplate code in the callers.
All trivial callers converted over.
Signed-off-by: Christoph Hellwig
---
arch/ia64/hp/common/sba_iommu.c | 15 +-
Avoid most of the afinfo indirections and just call the proc helpers
directly.
Signed-off-by: Christoph Hellwig
---
include/net/tcp.h | 11 ++
net/ipv4/tcp_ipv4.c | 85 +
net/ipv6/tcp_ipv6.c | 27 +-
3 files changed, 53
We currently have hundreds of proc files that implement plain, read-only
seq_file based interfaces. This series consolidates them using new
procfs helpers that take the seq_operations or simple show callback
directly.
A git tree is available at:
git://git.infradead.org/users/hch/misc.git
Otherwise we will leak a reference to the network namespace.
Signed-off-by: Christoph Hellwig
---
net/can/bcm.c | 2 +-
net/can/proc.c | 6 +++---
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/net/can/bcm.c b/net/can/bcm.c
index ac5e5e34fee3..8073fa14e143 100644
Variant of proc_create_data that directly take a struct seq_operations
argument + a private state size and drastically reduces the boilerplate
code in the callers.
All trivial callers converted over.
Signed-off-by: Christoph Hellwig
---
drivers/s390/cio/blacklist.c | 21
Pass the hashtable to the proc private data instead of copying
it into the per-file private data.
Signed-off-by: Christoph Hellwig
---
include/net/raw.h | 4
net/ipv4/raw.c| 36
net/ipv6/raw.c| 6 --
3 files changed, 16
Variants of proc_create{,_data} that directly take a seq_file show
callback and drastically reduces the boilerplate code in the callers.
All trivial callers converted over.
Signed-off-by: Christoph Hellwig
---
arch/arm/kernel/dma.c | 14 +---
Remove the pointless ping_seq_afinfo indirection and make the code look
like most other protocols.
Signed-off-by: Christoph Hellwig
---
include/net/ping.h | 11 --
net/ipv4/ping.c| 50 +-
net/ipv6/ping.c| 35
Christoph Hellwig wrote:
> Use remove_proc_subtree to remove the whole subtree on cleanup, and
> unwind the registration loop into individual calls. Switch to use
> proc_create_seq where applicable.
Note that this is likely going to clash with my patch to net-namespace all of
the
Just use the address family from the proc private data instead of copying
it into per-file data.
Signed-off-by: Christoph Hellwig
---
net/netfilter/x_tables.c | 39 +++
1 file changed, 11 insertions(+), 28 deletions(-)
diff --git
Remove a couple indirections to make the code look like most other
protocols.
Signed-off-by: Christoph Hellwig
---
net/kcm/kcmproc.c | 71 ---
1 file changed, 17 insertions(+), 54 deletions(-)
diff --git a/net/kcm/kcmproc.c
Variant of proc_create_data that directly take a seq_file show
callback and deals with network namespaces in ->open and ->release.
All callers of proc_create + single_open_net converted over, and
single_{open,release}_net are removed entirely.
Signed-off-by: Christoph Hellwig
---
Use remove_proc_subtree to remove the whole subtree on cleanup, and
unwind the registration loop into individual calls. Switch to use
proc_create_seq where applicable.
Signed-off-by: Christoph Hellwig
---
drivers/acpi/battery.c | 121 +
1
Variants of proc_create{,_data} that directly take a struct seq_operations
and deal with network namespaces in ->open and ->release. All callers of
proc_create + seq_open_net converted over, and seq_{open,release}_net are
removed entirely.
Signed-off-by: Christoph Hellwig
---
Use remove_proc_subtree to remove the whole subtree on cleanup, and
unwind the registration loop into individual calls. Switch to use
proc_create_seq where applicable.
Signed-off-by: Christoph Hellwig
---
fs/ext4/ext4.h| 2 +-
fs/ext4/mballoc.c | 29
Use remove_proc_subtree to remove the whole subtree on cleanup instead
of a hand rolled list of proc entries, unwind the registration loop into
individual calls. Switch to use proc_create_single to further simplify
the code.
Signed-off-by: Christoph Hellwig
---
Use remove_proc_subtree to remove the whole subtree on cleanup, and
unwind the registration loop into individual calls. Switch to use
proc_create_seq where applicable.
Signed-off-by: Christoph Hellwig
---
fs/afs/proc.c | 134 ++
1
Use remove_proc_subtree to remove the whole subtree on cleanup, and
unwind the registration loop into individual calls. Switch to use
proc_create_seq where applicable.
Signed-off-by: Christoph Hellwig
---
drivers/misc/sgi-gru/gruprocfs.c | 81 ++--
1
Use remove_proc_subtree to remove the whole subtree on cleanup, and
unwind the registration loop into individual calls. Switch to use
proc_create_seq where applicable.
Signed-off-by: Christoph Hellwig
---
drivers/scsi/sg.c | 124 +-
1
Use remove_proc_subtree to remove the whole subtree on cleanup, and
unwind the registration loop into individual calls. Switch to use
proc_create_single.
Signed-off-by: Christoph Hellwig
---
drivers/scsi/megaraid.c | 140 +++-
Use remove_proc_subtree to remove the whole subtree on cleanup, and
unwind the registration loop into individual calls. Switch to use
proc_create_seq where applicable.
Signed-off-by: Christoph Hellwig
---
fs/jfs/jfs_debug.c| 43 ++-
And use proc private data directly instead of doing a detour
through seq->private.
Signed-off-by: Christoph Hellwig
---
drivers/net/bonding/bond_procfs.c | 36 ++-
1 file changed, 6 insertions(+), 30 deletions(-)
diff --git
And stop trying to get a reference on the submodule, procfs code deals
with release after and unloaded module and thus removed proc entry.
Signed-off-by: Christoph Hellwig
---
drivers/rtc/rtc-proc.c | 33 ++---
1 file changed, 2 insertions(+), 31
Unwind the registration loop into individual calls. Switch to use
proc_create_single where applicable.
Signed-off-by: Christoph Hellwig
---
drivers/staging/rtl8192u/r8192U_core.c | 67 ++
1 file changed, 14 insertions(+), 53 deletions(-)
diff --git
And use the root resource directly from the proc private data.
Signed-off-by: Christoph Hellwig
---
kernel/resource.c | 43 +--
1 file changed, 5 insertions(+), 38 deletions(-)
diff --git a/kernel/resource.c b/kernel/resource.c
index
And use proc private data directly instead of doing a detour
through seq->private and private state.
Signed-off-by: Christoph Hellwig
---
net/bluetooth/af_bluetooth.c | 40 +---
1 file changed, 5 insertions(+), 35 deletions(-)
diff --git
And switch to proc_create_single_data.
Signed-off-by: Christoph Hellwig
---
drivers/isdn/capi/kcapi.c | 3 ++-
drivers/isdn/gigaset/capi.c| 16 +---
drivers/isdn/hardware/avm/avmcard.h| 4 ++--
drivers/isdn/hardware/avm/b1.c | 17
And stop messing with try_module_get on THIS_MODULE, which doesn't make
any sense here.
Signed-off-by: Christoph Hellwig
---
drivers/block/drbd/drbd_int.h | 2 +-
drivers/block/drbd/drbd_main.c | 3 ++-
drivers/block/drbd/drbd_proc.c | 34 +-
3
The driver proc file hasn't been writeable for a long time, so this is
just dead code.
Signed-off-by: Christoph Hellwig
---
drivers/ide/ide-proc.c | 46 --
1 file changed, 46 deletions(-)
diff --git a/drivers/ide/ide-proc.c
And remove proc boilerplate code.
Signed-off-by: Christoph Hellwig
---
net/atm/proc.c | 72 +-
1 file changed, 13 insertions(+), 59 deletions(-)
diff --git a/net/atm/proc.c b/net/atm/proc.c
index f272b0f59d82..0b0495a41bbe 100644
---
Signed-off-by: Christoph Hellwig
---
fs/proc/array.c | 18 --
1 file changed, 4 insertions(+), 14 deletions(-)
diff --git a/fs/proc/array.c b/fs/proc/array.c
index ae2c807fd719..b34796b562ef 100644
--- a/fs/proc/array.c
+++ b/fs/proc/array.c
@@ -677,7 +677,7 @@
Use remove_proc_subtree to remove the whole subtree on cleanup, and
unwind the registration loop into individual calls. Switch to use
proc_create_seq where applicable.
Signed-off-by: Christoph Hellwig
---
net/atm/proc.c | 65 ++
1
And use proc private data directly instead of doing a detour
through seq->private.
Signed-off-by: Christoph Hellwig
---
net/core/neighbour.c | 31 ++-
1 file changed, 6 insertions(+), 25 deletions(-)
diff --git a/net/core/neighbour.c
And use proc private data directly instead of doing a detour
through seq->private.
Signed-off-by: Christoph Hellwig
---
net/netfilter/xt_hashlimit.c | 92 +++-
1 file changed, 18 insertions(+), 74 deletions(-)
diff --git
And use proc private data directly instead of doing a detour
through seq->private.
Signed-off-by: Christoph Hellwig
---
.../net/wireless/intersil/hostap/hostap_ap.c | 70 ++---
.../net/wireless/intersil/hostap/hostap_hw.c | 17 +--
.../wireless/intersil/hostap/hostap_proc.c
Just set up the show callback in the tty_operations, and use
proc_create_single_data to create the file without additional
boilerplace code.
Signed-off-by: Christoph Hellwig
---
arch/ia64/hp/sim/simserial.c| 15 +--
arch/xtensa/platforms/iss/console.c | 15
Just set up the show callback in the tty_operations, and use
proc_create_single_data to create the file without additional
boilerplace code.
Signed-off-by: Christoph Hellwig
---
drivers/ide/ide-cd.c | 15 +---
drivers/ide/ide-disk_proc.c | 62 ++--
And remove proc boilerplate code.
Signed-off-by: Christoph Hellwig
---
net/netfilter/x_tables.c | 42 ++--
1 file changed, 6 insertions(+), 36 deletions(-)
diff --git a/net/netfilter/x_tables.c b/net/netfilter/x_tables.c
index
This helper deals with single_{open,release}_net internals and thus
belongs here.
Signed-off-by: Christoph Hellwig
---
include/linux/seq_file_net.h | 13 +
include/net/ip_vs.h | 12
2 files changed, 13 insertions(+), 12 deletions(-)
diff --git
The shole seq_file sequence already operates under a single RCU lock pair,
so move the pid namespace lookup into it, and stop grabbing a reference
and remove all kinds of boilerplate code.
Signed-off-by: Christoph Hellwig
---
net/ipv6/ip6_flowlabel.c | 28
https://bugzilla.kernel.org/show_bug.cgi?id=199435
--- Comment #6 from Anthony Hausman (anthonyhaussm...@gmail.com) ---
I have a stack trave about the Workqueue:
Apr 19 11:22:52 kernel: INFO: task kworker/u129:28:428 blocked for more than
120 seconds.
Apr 19 11:22:52 kernel: Tainted: G
On Thu, 19 Apr 2018 10:10:41 +0200
Johannes Thumshirn wrote:
> On Wed, Apr 18, 2018 at 04:00:43PM +, Bart Van Assche wrote:
> > Thank you for having come up with this so quickly. Something I do
> > not like about this patch series is that several new very short
> > helper
> Il giorno 18 apr 2018, alle ore 16:30, Jens Axboe ha
> scritto:
>
> On 4/18/18 3:08 AM, Paolo Valente wrote:
>>
>>
>>> Il giorno 18 apr 2018, alle ore 00:57, Jens Axboe ha
>>> scritto:
>>>
>>> On 4/17/18 3:48 PM, Jens Axboe wrote:
On 4/17/18 3:47
https://bugzilla.kernel.org/show_bug.cgi?id=199435
--- Comment #5 from Anthony Hausman (anthonyhaussm...@gmail.com) ---
Don,
I have applied the patch, it actually run and I try to reproduce the problem.
I'll inform you about the diagnose.
--
You are receiving this mail because:
You are the
On Thu, Apr 19, 2018 at 12:42:28AM -0400, Douglas Gilbert wrote:
> This patch uses a cleaner method to convey the presence of the IMMED
> cdb bit back to the generic delay code in the scsi_debug driver. The
> previous method used a temporary mask over the SCSI result value
> (a 32 bit integer soon
On Thu, Apr 19, 2018 at 09:48:56AM +1000, Finn Thain wrote:
> Every hunk except the last one looks to be equivalent. Not sure why
> the last one is treated differently.
That's a bug I'd say. thanks for catching it.
> Also, I think using two assignments instead of one is a step backwards. Is
>
On Thu, Apr 19, 2018 at 08:15:47AM +0200, Hannes Reinecke wrote:
> On Wed, 18 Apr 2018 17:01:15 +0200
> Johannes Thumshirn wrote:
>
> > Introduce clear_scsi_result() and convert drivers over to use the new
> > function.
> >
>
> [ .. ]
>
> Why not use 'set_scsi_result'
On 2018-04-18 23:21, Linus Torvalds wrote:
> On Wed, Apr 18, 2018 at 1:12 AM, Martin Wilck wrote:
>>
>> No, it doesn't (gcc 7.3.0). -> https://paste.opensuse.org/27471594
>> It doesn't even warn on an expression like this:
>>
>> #define SIZE (1<<10)
>> static int
On Wed, Apr 18, 2018 at 04:00:43PM +, Bart Van Assche wrote:
> Thank you for having come up with this so quickly. Something I do not
> like about this patch series is that several new very short helper functions
> are introduced, e.g. set_scsi_result(), clear_scsi_result(), to_scsi_result()
>
From: Xiubo Li
This patch adds 1 tcmu attr to reset and complete all the blocked
netlink waiting threads. It's used when the userspace daemon like
tcmu-runner has crashed or forced to shutdown just before the
netlink requests be replied to the kernel, then the netlink
From: Xiubo Li
Make the target_for_each_device could list all the devices not only
configured as needed.
Signed-off-by: Xiubo Li
---
drivers/target/target_core_device.c | 10 +-
drivers/target/target_core_internal.h | 2 --
From: Xiubo Li
Changes since v1(suggested by Mike Christie):
v2: - Makes the reset per device.
v3: - Remove nl_cmd->complete, use status instead
- Fix lock issue
- Check if a nl command is even waiting before trying to wake up
v4: - Add module wide action support and
From: Xiubo Li
For some case we need some module wide configfs to contol some
attributes of the whole transport module.
Signed-off-by: Xiubo Li
---
drivers/target/target_core_configfs.c | 46 +++
> -Original Message-
> From: Martin K. Petersen [mailto:martin.peter...@oracle.com]
> Sent: Wednesday, April 18, 2018 10:43 PM
> To: volker.schwick...@godaddy.com
> Cc: linux-scsi@vger.kernel.org; Kashyap Desai; Sumit Saxena
> Subject: Re: MegaCli fails to communicate with Raid-Controller
On Wed, 18 Apr 2018 17:01:15 +0200
Johannes Thumshirn wrote:
> Introduce clear_scsi_result() and convert drivers over to use the new
> function.
>
[ .. ]
Why not use 'set_scsi_result' here?
Basically everywhere the usage pattern is
clear_scsi_result()
set_host_byte()
so
On Thu, 19 Apr 2018 09:46:30 +1000 (AEST)
Finn Thain wrote:
> On Wed, 18 Apr 2018, Johannes Thumshirn wrote:
>
> > --- a/drivers/scsi/dc395x.c
> > +++ b/drivers/scsi/dc395x.c
> > @@ -3473,7 +3473,7 @@ static void srb_done(struct AdapterCtlBlk
> > *acb, struct
78 matches
Mail list logo