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
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Date:	Fri, 21 Jan 2011 10:03:10 +0800
From:	Yang Ruirui <ruirui.r.yang@...to.com>
To:	Felipe Balbi <balbi@...com>, Greg Kroah-Hartman <gregkh@...e.de>,
	Hao Wu <hao.wu@...el.com>, Alan Cox <alan@...ux.intel.com>,
	Alek Du <alek.du@...el.com>, <linux-usb@...r.kernel.org>,
	<linux-kernel@...r.kernel.org>,
	Sergei Shtylyov <sshtylyov@...sta.com>
Subject: [PATCH v3] usb langwell otg: use notifier chain of struct
 otg_transceiver

Use notifier chain in otg_transceiver instead of own notifier chain.

Signed-off-by: Yang Ruirui <ruirui.r.yang@...to.com>
Reviewed-by: Felipe Balbi <balbi@...com>
---
This patch depends on another patch which change otg_transceiver
notifier chain to atomic one, please see:
https://lkml.org/lkml/2011/1/19/72

 drivers/usb/otg/langwell_otg.c    |    7 +++----
 include/linux/usb/intel_mid_otg.h |   17 -----------------
 2 files changed, 3 insertions(+), 21 deletions(-)

--- linux-2.6.orig/drivers/usb/otg/langwell_otg.c	2010-12-15 15:43:36.000000000 +0800
+++ linux-2.6/drivers/usb/otg/langwell_otg.c	2011-01-20 13:33:28.346040564 +0800
@@ -2124,12 +2124,11 @@ static int langwell_otg_probe(struct pci
 	}
 
 	init_timer(&lnw->hsm_timer);
-	ATOMIC_INIT_NOTIFIER_HEAD(&lnw->iotg.iotg_notifier);
+	ATOMIC_INIT_NOTIFIER_HEAD(&lnw->iotg.otg.notifier);
 
 	lnw->iotg_notifier.notifier_call = langwell_otg_iotg_notify;
 
-	retval = intel_mid_otg_register_notifier(&lnw->iotg,
-						&lnw->iotg_notifier);
+	retval = otg_register_notifier(&lnw->iotg.otg, &lnw->iotg_notifier);
 	if (retval) {
 		dev_dbg(lnw->dev, "Failed to register notifier\n");
 		goto err;
@@ -2187,7 +2186,7 @@ static void langwell_otg_remove(struct p
 		flush_workqueue(lnw->qwork);
 		destroy_workqueue(lnw->qwork);
 	}
-	intel_mid_otg_unregister_notifier(&lnw->iotg, &lnw->iotg_notifier);
+	otg_unregister_notifier(&lnw->iotg.otg, &lnw->iotg_notifier);
 	langwell_otg_free_timers();
 
 	/* disable OTGSC interrupt as OTGSC doesn't change in reset */
--- linux-2.6.orig/include/linux/usb/intel_mid_otg.h	2010-12-15 15:43:38.000000000 +0800
+++ linux-2.6/include/linux/usb/intel_mid_otg.h	2011-01-20 13:23:48.809375229 +0800
@@ -117,9 +117,6 @@ struct intel_mid_otg_xceiv {
 	/* ops to access ulpi */
 	struct iotg_ulpi_access_ops	ulpi_ops;
 
-	/* atomic notifier for interrupt context */
-	struct atomic_notifier_head	iotg_notifier;
-
 	/* start/stop USB Host function */
 	int	(*start_host)(struct intel_mid_otg_xceiv *iotg);
 	int	(*stop_host)(struct intel_mid_otg_xceiv *iotg);
@@ -163,18 +160,4 @@ struct intel_mid_otg_xceiv *otg_to_mid_x
 #define MID_OTG_NOTIFY_CLIENTADD	0x0009
 #define MID_OTG_NOTIFY_CLIENTREMOVE	0x000a
 
-static inline int
-intel_mid_otg_register_notifier(struct intel_mid_otg_xceiv *iotg,
-				struct notifier_block *nb)
-{
-	return atomic_notifier_chain_register(&iotg->iotg_notifier, nb);
-}
-
-static inline void
-intel_mid_otg_unregister_notifier(struct intel_mid_otg_xceiv *iotg,
-				struct notifier_block *nb)
-{
-	atomic_notifier_chain_unregister(&iotg->iotg_notifier, nb);
-}
-
 #endif /* __INTEL_MID_OTG_H */
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists