lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Wed, 1 Nov 2017 07:06:14 +0000 From: "Rangankar, Manish" <Manish.Rangankar@...ium.com> To: Kees Cook <keescook@...omium.org>, "Martin K. Petersen" <martin.petersen@...cle.com> CC: Dept-Eng QLogic Storage Upstream <QLogic-Storage-Upstream@...ium.com>, "James E.J. Bottomley" <jejb@...ux.vnet.ibm.com>, "linux-scsi@...r.kernel.org" <linux-scsi@...r.kernel.org>, "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org> Subject: Re: [PATCH] scsi: qla4xxx: Convert timers to use timer_setup() On 25/10/17 3:37 PM, "Kees Cook" <keescook@...omium.org> 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. > >Cc: QLogic-Storage-Upstream@...gic.com >Cc: "James E.J. Bottomley" <jejb@...ux.vnet.ibm.com> >Cc: "Martin K. Petersen" <martin.petersen@...cle.com> >Cc: linux-scsi@...r.kernel.org >Signed-off-by: Kees Cook <keescook@...omium.org> >--- > drivers/scsi/qla4xxx/ql4_os.c | 12 ++++++------ > 1 file changed, 6 insertions(+), 6 deletions(-) > >diff --git a/drivers/scsi/qla4xxx/ql4_os.c b/drivers/scsi/qla4xxx/ql4_os.c >index 64c6fa563fdb..2b8a8ce2a431 100644 >--- a/drivers/scsi/qla4xxx/ql4_os.c >+++ b/drivers/scsi/qla4xxx/ql4_os.c >@@ -3955,16 +3955,15 @@ void qla4xxx_update_session_conn_param(struct >scsi_qla_host *ha, > /* > * Timer routines > */ >+static void qla4xxx_timer(struct timer_list *t); > >-static void qla4xxx_start_timer(struct scsi_qla_host *ha, void *func, >+static void qla4xxx_start_timer(struct scsi_qla_host *ha, > unsigned long interval) > { > DEBUG(printk("scsi: %s: Starting timer thread for adapter %d\n", > __func__, ha->host->host_no)); >- init_timer(&ha->timer); >+ timer_setup(&ha->timer, qla4xxx_timer, 0); > ha->timer.expires = jiffies + interval * HZ; >- ha->timer.data = (unsigned long)ha; >- ha->timer.function = (void (*)(unsigned long))func; > add_timer(&ha->timer); > ha->timer_active = 1; > } >@@ -4508,8 +4507,9 @@ static void qla4xxx_check_relogin_flash_ddb(struct >iscsi_cls_session *cls_sess) > * qla4xxx_timer - checks every second for work to do. > * @ha: Pointer to host adapter structure. > **/ >-static void qla4xxx_timer(struct scsi_qla_host *ha) >+static void qla4xxx_timer(struct timer_list *t) > { >+ struct scsi_qla_host *ha = from_timer(ha, t, timer); > int start_dpc = 0; > uint16_t w; > >@@ -8805,7 +8805,7 @@ static int qla4xxx_probe_adapter(struct pci_dev >*pdev, > ha->isp_ops->enable_intrs(ha); > > /* Start timer thread. */ >- qla4xxx_start_timer(ha, qla4xxx_timer, 1); >+ qla4xxx_start_timer(ha, 1); > > set_bit(AF_INIT_DONE, &ha->flags); > >-- >2.7.4 Acked-by: Manish Rangankar <Manish.Rangankar@...ium.com>
Powered by blists - more mailing lists