] ? SYSC_bind+0x7e/0xd0
[8194f8cd] __sys_sendmsg+0x4d/0x80
[8194f912] SyS_sendmsg+0x12/0x20
[81afc692] system_call_fastpath+0x16/0x1b
Fixing this by replacing the mode GFP_KERNEL with GFP_NOWAIT.
Signed-off-by: Benjamin Block b...@mageta.org
---
net/ipv6/ip6_fib.c | 2 +-
1 file
On 14:54 Thu 21 Aug , Hannes Frederic Sowa wrote:
On Mi, 2014-08-20 at 18:16 +0200, Benjamin Block wrote:
The function fib6_commit_metrics() allocates a piece of memory in mode
GFP_KERNEL while holding an atomic lock from higher up in the stack, in
the function __ip6_ins_rt
] ? SYSC_bind+0x7e/0xd0
[8194f8cd] __sys_sendmsg+0x4d/0x80
[8194f912] SyS_sendmsg+0x12/0x20
[81afc692] system_call_fastpath+0x16/0x1b
Fixing this by replacing the mode GFP_KERNEL with GFP_ATOMIC.
Signed-off-by: Benjamin Block b...@mageta.org
---
net/ipv6/ip6_fib.c | 2 +-
1 file
you're explaining your program, wake him up.
--
best regards,
- Benjamin Block
signature.asc
Description: Digital signature
On 08/21/2014 08:52 PM, Benjamin Block wrote:
Hello,
while rebooting one of my dev-machines I stumbled over this
lockdep-mess-up:
=
[ INFO: inconsistent lock state ]
3.17.0-rc1-1-gb83ca8c #2 Tainted: G O
On 08/22/2014 07:33 PM, Rafael J. Wysocki wrote:
On Friday, August 22, 2014 03:37:55 PM Lan Tianyu wrote:
Currently fixed button devices' notify callbacks are running in the
interrupt context. It's not necessary and prevent calling functions
with mutex lock(E,G evaluating ACPI method).
r->pool.erp_req);
> + mempool_destroy(adapter->pool.scsi_req);
> + mempool_destroy(adapter->pool.scsi_abort);
> + mempool_destroy(adapter->pool.qtcb_pool);
> + mempool_destroy(adapter->pool.status_read_req);
> + mempool_destroy(adapter->pool.sr_data);
> +
On 10:39 Mon 08 Aug , Jens Axboe wrote:
> On 08/08/2016 10:32 AM, Benjamin Block wrote:
> >On 12:06 Fri 05 Aug , Mike Snitzer wrote:
> >>On Fri, Aug 05 2016 at 11:54am -0400,
> >>Jens Axboe <ax...@kernel.dk> wrote:
> >>
> >>>On 08/05/2
ote:
> > >
> > >>On 08/05/2016 09:27 AM, Mike Snitzer wrote:
> > >>>On Wed, Aug 03 2016 at 11:35am -0400,
> > >>>Benjamin Block <bbl...@linux.vnet.ibm.com> wrote:
> > >>>
> > >>>>Hej Mike,
> > >&g
ote:
> > >
> > >>On 08/05/2016 09:27 AM, Mike Snitzer wrote:
> > >>>On Wed, Aug 03 2016 at 11:35am -0400,
> > >>>Benjamin Block <bbl...@linux.vnet.ibm.com> wrote:
> > >>>
> > >>>>Hej Mike,
> > >&g
Yes please, I was extremely confused for a moment here.
Beste Grüße / Best regards,
- Benjamin Block
--
Linux on z Systems Development / IBM Systems & Technology Group
IBM Deutschland Rese
I have been working with Steffen on zFCP for quite a while now and we
decided adding me as a co-maintainer might be a good thing.
Acked-by: Steffen Maier <ma...@linux.vnet.ibm.com>
Signed-off-by: Benjamin Block <bbl...@linux.vnet.ibm.com>
---
MAINTAINERS | 1 +
1 file changed,
On Fri, Aug 11, 2017 at 05:35:53PM +0200, Christoph Hellwig wrote:
> On Fri, Aug 11, 2017 at 05:32:03PM +0200, Benjamin Block wrote:
> > So when the bsg interface is used with something different than the
> > bsg-lib request queue?
>
> Yes.
>
> > I haven't actually
54040 Mon Sep 17 00:00:00 2001
> From: Christoph Hellwig <h...@lst.de>
> Date: Fri, 11 Aug 2017 11:03:29 +0200
> Subject: bsg-lib: allocate sense data for each request
>
> Since we split the scsi_request out of the request the driver is supposed
> to provide storage for the
this is gonna experience and after that we can still think about
improving it further beyond what the rest of the patch set already does,
if that is necessary.
Beste Grüße / Best regards,
On Thu, Aug 10, 2017 at 10:24:56AM +0200, Johannes Thumshirn wrote:
> On Wed, Aug 09, 2017 at 04:11:18PM +0200, Benjamin Block wrote:
> > + return 0 == (bc->hdr.flags & BSG_FLAG_Q_AT_TAIL);
>
> return !(bc->hdr.flags & BSG_FLAG_Q_AT_TAIL); and make the function r
On Thu, Aug 10, 2017 at 11:35:31AM +0200, Christoph Hellwig wrote:
> On Wed, Aug 09, 2017 at 04:11:19PM +0200, Benjamin Block wrote:
> > Since struct bsg_command is now used in every calling case, we don't
> > need separation of arguments anymore that are contained in the same
On Fri, Aug 11, 2017 at 12:10:38AM +0200, Benjamin Block wrote:
> On Thu, Aug 10, 2017 at 11:32:17AM +0200, Christoph Hellwig wrote:
> > We can't use an on-stack buffer for the sense data, as drivers will
> > dma to it. So we should reuse the SCSI init_rq_fn() for the
On Fri, Aug 11, 2017 at 04:36:49PM +0200, Christoph Hellwig wrote:
> On Fri, Aug 11, 2017 at 03:49:29PM +0200, Benjamin Block wrote:
> > On Fri, Aug 11, 2017 at 11:14:15AM +0200, Christoph Hellwig wrote:
> > > But patch 1 still creates an additional copy of the sense data for
&
On Sun, Aug 13, 2017 at 04:39:40PM +0200, Christoph Hellwig wrote:
> On Fri, Aug 11, 2017 at 06:01:42PM +0200, Benjamin Block wrote:
> > When the BSG interface is used with bsg-lib, and the user sends a
> > Bidirectional command - so when he gives an input- and output-buffer
> &g
allocate the sense data, which is used as reply buffer in bsg.
>
> Reported-by: Steffen Maier <ma...@linux.vnet.ibm.com>
> Signed-off-by: Benjamin Block <bbl...@linux.vnet.ibm.com>
> Fixes: 82ed4db499b8 ("block: split scsi_request out of struct request")
&g
is turned off.
Last Breaking-Event-Address:
[<03ff801e41d6>] zfcp_fc_ct_job_handler+0x3e/0x48 [zfcp]
Kernel panic - not syncing: Fatal exception in interrupt
To prevent this, allocate a buffer when the BSG blk-request is setup, and
before it is queued for LLD processing.
Reported-by:
Since struct bsg_command is now used in every calling case, we don't
need separation of arguments anymore that are contained in the same
bsg_command.
Signed-off-by: Benjamin Block <bbl...@linux.vnet.ibm.com>
---
block/bsg.c | 13 ++---
1 file changed, 6 insertions(+), 7 del
Since struct bsg_command is now used in every calling case, we don't
need separation of arguments anymore that are contained in the same
bsg_command.
Signed-off-by: Benjamin Block <bbl...@linux.vnet.ibm.com>
---
block/bsg.c | 20 +---
1 file changed, 9 insertions(+), 11 del
ply.
*
* ...
*/
Signed-off-by: Benjamin Block <bbl...@linux.vnet.ibm.com>
---
block/bsg-lib.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/block/bsg-lib.c b/block/bsg-lib.c
index c4513b23f57a..c7c2c6bbb5ae 100644
--- a/block/bsg-lib.c
+++ b/block/bsg-lib.c
@@ -147
it easier to notice accidental violations add an explicit compile-
time check that tests whether the implementations' reply buffer is at most
as large as bsg_job's.
To do so, we have to move the size-define from bsg.c to a common header.
Signed-off-by: Benjamin Block <bbl...@linux.vnet.ibm.
ustom code to test the read/write interface of BSG.
Reviews are more than welcome :)
Beste Grüße / Best regards,
- Benjamin Block
Benjamin Block (6):
bsg: fix kernel panic resulting from missing
unification is not possible, as it then would also enqueue SG_IO
commands in the BGS devices's command list, but this is only for the read-
and write-calls.
Signed-off-by: Benjamin Block <bbl...@linux.vnet.ibm.com>
---
block/bsg.c | 60
ed in 12fb8c1574d7d in 2010, see the
commit message there.
Beste Grüße / Best regards,
- Benjamin Block
>
> diff --git a/drivers/scsi/scsi_scan.c b/drivers/scsi/scsi_scan.c
> index 81d
t
doesn't really itself destroy the job-struct anymore. If there are other
thing amiss I can change that along with them, if it bothers poeple.
Beste Grüße / Best regards,
- Benjamin Block
>
a buffer for the reply-data.
This means, struct bsg_job is not allocated separately anymore, but as part
of struct request allocation - similar to struct scsi_cmd. Reflect this in
the function names that used to handle creation/destruction of struct
bsg_job.
Reported-by: Steffen Maier <ma...@lin
are more than welcome :)
Beste Grüße / Best regards,
- Benjamin Block
Benjamin Block (1):
bsg-lib: fix kernel panic resulting from missing allocation of
reply-buffer
block/bsg-lib.c
mempool_destroy(adapter->pool.erp_req);
> + mempool_destroy(adapter->pool.scsi_req);
> + mempool_destroy(adapter->pool.scsi_abort);
> + mempool_destroy(adapter->pool.qtcb_pool);
> + mempool_destroy(adapter->pool.status_read_req);
> + mempool_destroy(adapter->pool.sr_
/0x220
> [] ? mutex_unlock+0xe/0x10
> [] ? netlink_insert+0xbc/0xe0
> [] ? netlink_autobind.isra.30+0x125/0x150
> [] ? netlink_autobind.isra.30+0x60/0x150
> [] ? netlink_bind+0x159/0x230
> [] ? might_fault+0x5a/0xb0
> [] ? SYSC_bind+0x7e/0xd0
> [] __sys_sendmsg+0x4d/0x80
> [] SyS_sendmsg
On 14:54 Thu 21 Aug , Hannes Frederic Sowa wrote:
> On Mi, 2014-08-20 at 18:16 +0200, Benjamin Block wrote:
> > The function fib6_commit_metrics() allocates a piece of memory in mode
> > GFP_KERNEL while holding an atomic lock from higher up in the stack, in
> > the
/0x220
> [] ? mutex_unlock+0xe/0x10
> [] ? netlink_insert+0xbc/0xe0
> [] ? netlink_autobind.isra.30+0x125/0x150
> [] ? netlink_autobind.isra.30+0x60/0x150
> [] ? netlink_bind+0x159/0x230
> [] ? might_fault+0x5a/0xb0
> [] ? SYSC_bind+0x7e/0xd0
> [] __sys_sendmsg+0x4d/0x80
> [] SyS_sendmsg
s and my best guess is, netlink_poll() needs to be irq-save.
Thing is, the corresponding code is quite old and I can't really bisec
it, because the none-reproducibility.
There is only the small ipv6-fib patch applied, I send in earlier today
(https://lkml.org/lkml/2014/8/21/506). This should
On 08/21/2014 08:52 PM, Benjamin Block wrote:
> Hello,
>
> while rebooting one of my dev-machines I stumbled over this
> lockdep-mess-up:
>
>> =
>> [ INFO: inconsistent lock state ]
>> 3.17.0-rc1-1-g
On 08/22/2014 07:33 PM, Rafael J. Wysocki wrote:
> On Friday, August 22, 2014 03:37:55 PM Lan Tianyu wrote:
>> Currently fixed button devices' notify callbacks are running in the
>> interrupt context. It's not necessary and prevent calling functions
>> with mutex lock(E,G evaluating ACPI method).
this is gonna experience and after that we can still think about
improving it further beyond what the rest of the patch set already does,
if that is necessary.
Beste Grüße / Best regards,
On Thu, Aug 10, 2017 at 10:24:56AM +0200, Johannes Thumshirn wrote:
> On Wed, Aug 09, 2017 at 04:11:18PM +0200, Benjamin Block wrote:
> > + return 0 == (bc->hdr.flags & BSG_FLAG_Q_AT_TAIL);
>
> return !(bc->hdr.flags & BSG_FLAG_Q_AT_TAIL); and make the function r
On Thu, Aug 10, 2017 at 11:35:31AM +0200, Christoph Hellwig wrote:
> On Wed, Aug 09, 2017 at 04:11:19PM +0200, Benjamin Block wrote:
> > Since struct bsg_command is now used in every calling case, we don't
> > need separation of arguments anymore that are contained in the same
On Fri, Aug 11, 2017 at 12:10:38AM +0200, Benjamin Block wrote:
> On Thu, Aug 10, 2017 at 11:32:17AM +0200, Christoph Hellwig wrote:
> > We can't use an on-stack buffer for the sense data, as drivers will
> > dma to it. So we should reuse the SCSI init_rq_fn() for the
Mon Sep 17 00:00:00 2001
> From: Christoph Hellwig
> Date: Fri, 11 Aug 2017 11:03:29 +0200
> Subject: bsg-lib: allocate sense data for each request
>
> Since we split the scsi_request out of the request the driver is supposed
> to provide storage fo
On Fri, Aug 11, 2017 at 04:36:49PM +0200, Christoph Hellwig wrote:
> On Fri, Aug 11, 2017 at 03:49:29PM +0200, Benjamin Block wrote:
> > On Fri, Aug 11, 2017 at 11:14:15AM +0200, Christoph Hellwig wrote:
> > > But patch 1 still creates an additional copy of the sense data for
&
On Fri, Aug 11, 2017 at 05:35:53PM +0200, Christoph Hellwig wrote:
> On Fri, Aug 11, 2017 at 05:32:03PM +0200, Benjamin Block wrote:
> > So when the bsg interface is used with something different than the
> > bsg-lib request queue?
>
> Yes.
>
> > I haven't actually
ustom code to test the read/write interface of BSG.
Reviews are more than welcome :)
Beste Grüße / Best regards,
- Benjamin Block
Benjamin Block (6):
bsg: fix kernel panic resulting from missing
it easier to notice accidental violations add an explicit compile-
time check that tests whether the implementations' reply buffer is at most
as large as bsg_job's.
To do so, we have to move the size-define from bsg.c to a common header.
Signed-off-by: Benjamin Block
---
block/bsg.c
unification is not possible, as it then would also enqueue SG_IO
commands in the BGS devices's command list, but this is only for the read-
and write-calls.
Signed-off-by: Benjamin Block
---
block/bsg.c | 60
1 file changed, 36 insertions
Since struct bsg_command is now used in every calling case, we don't
need separation of arguments anymore that are contained in the same
bsg_command.
Signed-off-by: Benjamin Block
---
block/bsg.c | 13 ++---
1 file changed, 6 insertions(+), 7 deletions(-)
diff --git a/block/bsg.c b
Since struct bsg_command is now used in every calling case, we don't
need separation of arguments anymore that are contained in the same
bsg_command.
Signed-off-by: Benjamin Block
---
block/bsg.c | 20 +---
1 file changed, 9 insertions(+), 11 deletions(-)
diff --git a/block
is turned off.
Last Breaking-Event-Address:
[<03ff801e41d6>] zfcp_fc_ct_job_handler+0x3e/0x48 [zfcp]
Kernel panic - not syncing: Fatal exception in interrupt
To prevent this, allocate a buffer when the BSG blk-request is setup, and
before it is queued for LLD processing.
Reported-by: St
ply.
*
* ...
*/
Signed-off-by: Benjamin Block
---
block/bsg-lib.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/block/bsg-lib.c b/block/bsg-lib.c
index c4513b23f57a..c7c2c6bbb5ae 100644
--- a/block/bsg-lib.c
+++ b/block/bsg-lib.c
@@ -147,8 +147,8 @@ static int bsg_create_
are more than welcome :)
Beste Grüße / Best regards,
- Benjamin Block
Benjamin Block (1):
bsg-lib: fix kernel panic resulting from missing allocation of
reply-buffer
block/bsg-lib.c
a buffer for the reply-data.
This means, struct bsg_job is not allocated separately anymore, but as part
of struct request allocation - similar to struct scsi_cmd. Reflect this in
the function names that used to handle creation/destruction of struct
bsg_job.
Reported-by: Steffen Maier
Suggested-by: C
t
doesn't really itself destroy the job-struct anymore. If there are other
thing amiss I can change that along with them, if it bothers poeple.
Beste Grüße / Best regards,
- Benjamin Block
>
ta, which is used as reply buffer in bsg.
>
> Reported-by: Steffen Maier
> Signed-off-by: Benjamin Block
> Fixes: 82ed4db499b8 ("block: split scsi_request out of struct request")
> Cc: #4.11+
> ---
> block/bsg-lib.c | 51
> +++
On Sun, Aug 13, 2017 at 04:39:40PM +0200, Christoph Hellwig wrote:
> On Fri, Aug 11, 2017 at 06:01:42PM +0200, Benjamin Block wrote:
> > When the BSG interface is used with bsg-lib, and the user sends a
> > Bidirectional command - so when he gives an input- and output-buffer
> &g
I have been working with Steffen on zFCP for quite a while now and we
decided adding me as a co-maintainer might be a good thing.
Acked-by: Steffen Maier
Signed-off-by: Benjamin Block
---
MAINTAINERS | 1 +
1 file changed, 1 insertion(+)
diff --git a/MAINTAINERS b/MAINTAINERS
index
ject in both functions.
>
> And add comments after put_device to make codes clearer.
>
> Suggested-by: Steffen Maier
> Suggested-by: Benjamin Block
> Signed-off-by: Qinglang Miao
> ---
> v2: add comments after put_device as Steffen suggested.
>
> drivers/s390/scsi/
On Thu, Nov 26, 2020 at 08:07:32PM +0800, Qinglang Miao wrote:
> 在 2020/11/26 17:42, Benjamin Block 写道:
> > On Thu, Nov 26, 2020 at 09:13:53AM +0100, Cornelia Huck wrote:
> > > On Thu, 26 Nov 2020 09:27:41 +0800
> > > Qinglang Miao wrote:
> > > &g
moving it and then having a dangling
reference also seems wrong - we do get one explicitly in
`zfcp_get_port_by_wwpn()`.
My first thought would be to move it after the `device_unregister()`
call, and before the `out:` label.
--
Best Regards, Benjamin Block / Linux on IBM Z Kernel Development /
}
>
> - put_device(>dev);
> -
> device_unregister(>dev);
>
> return 0;
Same as in the other mail for `zfcp_sysfs_port_remove_store()`. We
explicitly get a new ref in `_zfcp_unit_find()`, so we also need to put
that away again.
--
Best Regards, Benjamin Blo
On Thu, Nov 26, 2020 at 09:13:53AM +0100, Cornelia Huck wrote:
> On Thu, 26 Nov 2020 09:27:41 +0800
> Qinglang Miao wrote:
>
> > 在 2020/11/26 1:06, Benjamin Block 写道:
> > > On Fri, Nov 20, 2020 at 03:48:54PM +0800, Qinglang Miao wrote:
> > >> kfree(po
> It looks ok if those are not ordered, but I would get their review to make
> sure.
I am not aware of any temporal requirements of those LUN-scans, so I
think making them not explicitly ordered shouldn't hurt us.
The target scan itself is protected again by `shost->scan_mutex`.. so
all fi
csi=154831889001973=2 discusses some of them
> also.
>
Especially the TMFs send via SCSI EH are a bit of a pain I guess,
because they are entirely managed by the device drivers, but depending
on the device driver they might not even qualify for the problem Hannes
is seeing.
--
With Best Regards, Benjami
no sleeping, as far as I could see. Additionally, the code that
allocates the block queue for the device later (scsi_mq_alloc_queue())
already uses GFP_KERNEL.
So replace it, and give the allocation a bit of a better chance to succeed,
with more ways of reclaim.
Signed-off-by: Benjamin Block
On Wed, Feb 20, 2019 at 11:11:31AM -0800, Bart Van Assche wrote:
> On Wed, 2019-02-20 at 19:48 +0100, Benjamin Block wrote:
> > We had a test-report where, under memory pressure, adding LUNs to the
> > systems would fail (the tests add LUNs strictly in sequence):
&
Noticed during editing that vim would remove some trailing spaces.
Signed-off-by: Benjamin Block
---
drivers/scsi/scsi_scan.c | 10 +-
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/drivers/scsi/scsi_scan.c b/drivers/scsi/scsi_scan.c
index 53380e07b40e..7e1a6c3dd42c
of reclaim.
Signed-off-by: Benjamin Block
---
drivers/scsi/scsi_scan.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/scsi/scsi_scan.c b/drivers/scsi/scsi_scan.c
index dd0d516f65e2..53380e07b40e 100644
--- a/drivers/scsi/scsi_scan.c
+++ b/drivers/scsi
mempool_destroy(adapter->pool.erp_req);
> + mempool_destroy(adapter->pool.scsi_req);
> + mempool_destroy(adapter->pool.scsi_abort);
> + mempool_destroy(adapter->pool.qtcb_pool);
> + mempool_destroy(adapter->pool.status_read_req);
> + mempool_destroy(adapter->pool.sr_
ed in 12fb8c1574d7d in 2010, see the
commit message there.
Beste Grüße / Best regards,
- Benjamin Block
>
> diff --git a/drivers/scsi/scsi_scan.c b/drivers/scsi/scsi_scan.c
> index 81d
Yes please, I was extremely confused for a moment here.
Beste Grüße / Best regards,
- Benjamin Block
--
Linux on z Systems Development / IBM Systems & Technology Group
IBM Deutschland Rese
_destroy(adapter->pool.scsi_abort);
> + mempool_destroy(adapter->pool.qtcb_pool);
> + mempool_destroy(adapter->pool.status_read_req);
> + mempool_destroy(adapter->pool.sr_data);
> + mempool_destroy(adapter->pool.gid_pn);
> }
>
>
/2016 09:27 AM, Mike Snitzer wrote:
> > >>>On Wed, Aug 03 2016 at 11:35am -0400,
> > >>>Benjamin Block wrote:
> > >>>
> > >>>>Hej Mike,
> > >>>>
> > >>>>when running a debug-kernel today with severa
/2016 09:27 AM, Mike Snitzer wrote:
> > >>>On Wed, Aug 03 2016 at 11:35am -0400,
> > >>>Benjamin Block wrote:
> > >>>
> > >>>>Hej Mike,
> > >>>>
> > >>>>when running a debug-kernel today with severa
On 10:39 Mon 08 Aug , Jens Axboe wrote:
> On 08/08/2016 10:32 AM, Benjamin Block wrote:
> >On 12:06 Fri 05 Aug , Mike Snitzer wrote:
> >>On Fri, Aug 05 2016 at 11:54am -0400,
> >>Jens Axboe wrote:
> >>
> >>>On 08/05/2016 09:42 AM, Mike Sn
;rspn.fr_name_len = FC_SYMBOLIC_NAME_SIZE - 1;
else
rspn_req->rspn.fr_name_len = len;
>
> sg_init_one(_req->sg_req, rspn_req, sizeof(*rspn_req));
> sg_init_one(_req->sg_rsp, rspn_rsp, sizeof(*rspn_rsp));
>
--
Best Regards, Benjamin
78 matches
Mail list logo