2008-03-20 13:53:56

by Marcel Holtmann

[permalink] [raw]
Subject: Re: [Bluez-devel] [PATCH] BLUETOOTH: Use newer, non-deprecated __RW_LOCK_UNLOCKED macro.

Hi Robert,

> Signed-off-by: Robert P. J. Day <[email protected]>
>
> ---
>
> not compile tested, but a fairly trivial transformation.
>
>
> net/bluetooth/hci_sock.c | 2 +-
> net/bluetooth/l2cap.c | 2 +-
> net/bluetooth/rfcomm/sock.c | 2 +-
> net/bluetooth/sco.c | 2 +-
> 4 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/net/bluetooth/hci_sock.c b/net/bluetooth/hci_sock.c
> index b5d4019..1d36c09 100644
> --- a/net/bluetooth/hci_sock.c
> +++ b/net/bluetooth/hci_sock.c
> @@ -84,7 +84,7 @@ static struct hci_sec_filter hci_sec_filter = {
> };
>
> static struct bt_sock_list hci_sk_list = {
> - .lock = RW_LOCK_UNLOCKED
> + .lock = __RW_LOCK_UNLOCKED(hci_sk_list.lock)
> };

is that the way we do init of locks now? I haven't realized that
RW_LOCK_UNLOCKED is deprecated.

Regards

Marcel



-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Bluez-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bluez-devel


2008-03-20 14:50:11

by Marcel Holtmann

[permalink] [raw]
Subject: Re: [Bluez-devel] [PATCH] BLUETOOTH: Use newer, non-deprecated __RW_LOCK_UNLOCKED macro.

Hi Robert,

> > > Signed-off-by: Robert P. J. Day <[email protected]>
> > >
> > > ---
> > >
> > > not compile tested, but a fairly trivial transformation.
> > >
> > >
> > > net/bluetooth/hci_sock.c | 2 +-
> > > net/bluetooth/l2cap.c | 2 +-
> > > net/bluetooth/rfcomm/sock.c | 2 +-
> > > net/bluetooth/sco.c | 2 +-
> > > 4 files changed, 4 insertions(+), 4 deletions(-)
> > >
> > > diff --git a/net/bluetooth/hci_sock.c b/net/bluetooth/hci_sock.c
> > > index b5d4019..1d36c09 100644
> > > --- a/net/bluetooth/hci_sock.c
> > > +++ b/net/bluetooth/hci_sock.c
> > > @@ -84,7 +84,7 @@ static struct hci_sec_filter hci_sec_filter = {
> > > };
> > >
> > > static struct bt_sock_list hci_sk_list = {
> > > - .lock = RW_LOCK_UNLOCKED
> > > + .lock = __RW_LOCK_UNLOCKED(hci_sk_list.lock)
> > > };
> >
> > is that the way we do init of locks now? I haven't realized that
> > RW_LOCK_UNLOCKED is deprecated.
>
> yup, see Documentation/spinlocks.txt:
>
> "SPIN_LOCK_UNLOCKED and RW_LOCK_UNLOCKED defeat lockdep state tracking
> and are hence deprecated.
>
> "Please use DEFINE_SPINLOCK()/DEFINE_RWLOCK() or
> __SPIN_LOCK_UNLOCKED()/__RW_LOCK_UNLOCKED() as appropriate for static
> initialization."

then add an Acked-by: Marcel Holtmann <[email protected]> into your
commit message and post it to the netdev mailing list (me on CC). This
way it is faster since I am stuck with a heavy workload for the next
BlueZ release.

Regards

Marcel



-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Bluez-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bluez-devel

2008-03-20 14:45:26

by Robert P. J. Day

[permalink] [raw]
Subject: Re: [PATCH] BLUETOOTH: Use newer, non-deprecated __RW_LOCK_UNLOCKED macro.

On Thu, 20 Mar 2008, Marcel Holtmann wrote:

> Hi Robert,
>
> > Signed-off-by: Robert P. J. Day <[email protected]>
> >
> > ---
> >
> > not compile tested, but a fairly trivial transformation.
> >
> >
> > net/bluetooth/hci_sock.c | 2 +-
> > net/bluetooth/l2cap.c | 2 +-
> > net/bluetooth/rfcomm/sock.c | 2 +-
> > net/bluetooth/sco.c | 2 +-
> > 4 files changed, 4 insertions(+), 4 deletions(-)
> >
> > diff --git a/net/bluetooth/hci_sock.c b/net/bluetooth/hci_sock.c
> > index b5d4019..1d36c09 100644
> > --- a/net/bluetooth/hci_sock.c
> > +++ b/net/bluetooth/hci_sock.c
> > @@ -84,7 +84,7 @@ static struct hci_sec_filter hci_sec_filter = {
> > };
> >
> > static struct bt_sock_list hci_sk_list = {
> > - .lock = RW_LOCK_UNLOCKED
> > + .lock = __RW_LOCK_UNLOCKED(hci_sk_list.lock)
> > };
>
> is that the way we do init of locks now? I haven't realized that
> RW_LOCK_UNLOCKED is deprecated.

yup, see Documentation/spinlocks.txt:

"SPIN_LOCK_UNLOCKED and RW_LOCK_UNLOCKED defeat lockdep state tracking
and are hence deprecated.

"Please use DEFINE_SPINLOCK()/DEFINE_RWLOCK() or
__SPIN_LOCK_UNLOCKED()/__RW_LOCK_UNLOCKED() as appropriate for static
initialization."

rday
--

========================================================================
Robert P. J. Day
Linux Consulting, Training and Annoying Kernel Pedantry:
Have classroom, will lecture.

http://crashcourse.ca Waterloo, Ontario, CANADA
========================================================================