lkml.org 
[lkml]   [2016]   [Sep]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [RFC][PATCH v1 1/2] libsas: Alloc dynamic work to avoid missing sas events
From
Date
On 09/13/2016 04:30 AM, Yijing Wang wrote:
> Now libsas hotplug work is static, LLDD driver queue
> the hotplug work into shost->work_q. If LLDD driver
> burst post lots hotplug event to libsas, the hotplug
> events may pending in the workqueue like
>
> shost->workq
> tail | PHYE_LOSS_OF_SIGNAL | PORTE_BYTES_DMAED | head
>
> In this case, if a new PORTE_BYTES_DMAED event coming,
> it would be lost, because we can not queue a work which
> is already pending in the workqueue, also libsas has a
> pending bit to avoid queue the same event.
>
> The lost hotplug event make something confusing, e.g.
> we have sas disks connected hardware, but we can not
> found them in kernel.
>
> This patch remove the static defined hotplug work,
> and use dynamic work to avoid missing hotplug events.
>
> Signed-off-by: Yijing Wang <wangyijing@huawei.com>
> Signed-off-by: Yousong He <heyousong@huawei.com>
> Signed-off-by: Qilin Chen <chenqilin2@huawei.com>
> ---
> drivers/scsi/libsas/sas_event.c | 61 ++++++++++++++++++++---------------
> drivers/scsi/libsas/sas_init.c | 5 +--
> drivers/scsi/libsas/sas_internal.h | 3 ++
> drivers/scsi/libsas/sas_phy.c | 50 ++++++++---------------------
> drivers/scsi/libsas/sas_port.c | 23 ++++++++------
> include/scsi/libsas.h | 8 -----
> 6 files changed, 66 insertions(+), 84 deletions(-)
>
Reviewed-by: Hannes Reinecke <hare@suse.com>

Cheers,

Hannes
--
Dr. Hannes Reinecke zSeries & Storage
hare@suse.de +49 911 74053 688
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg
GF: J. Hawn, J. Guild, F. Imendörffer, HRB 16746 (AG Nürnberg)

\
 
 \ /
  Last update: 2016-09-17 09:59    [W:0.048 / U:0.360 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site