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
| ||
|
Message-Id: <20231118155105.25678-29-yury.norov@gmail.com> Date: Sat, 18 Nov 2023 07:50:59 -0800 From: Yury Norov <yury.norov@...il.com> To: linux-kernel@...r.kernel.org, Karsten Keil <isdn@...ux-pingi.de>, Marcel Holtmann <marcel@...tmann.org>, Johan Hedberg <johan.hedberg@...il.com>, Luiz Augusto von Dentz <luiz.dentz@...il.com>, Yury Norov <yury.norov@...il.com>, netdev@...r.kernel.org, linux-bluetooth@...r.kernel.org Cc: Jan Kara <jack@...e.cz>, Mirsad Todorovac <mirsad.todorovac@....unizg.hr>, Matthew Wilcox <willy@...radead.org>, Rasmus Villemoes <linux@...musvillemoes.dk>, Andy Shevchenko <andriy.shevchenko@...ux.intel.com>, Maxim Kuvyrkov <maxim.kuvyrkov@...aro.org>, Alexey Klimov <klimov.linux@...il.com> Subject: [PATCH 28/34] bluetooth: optimize cmtp_alloc_block_id() Instead of polling every bit in blockids, switch it to using a dedicated find_and_set_bit(), and make the function a simple one-liner. Signed-off-by: Yury Norov <yury.norov@...il.com> --- net/bluetooth/cmtp/core.c | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/net/bluetooth/cmtp/core.c b/net/bluetooth/cmtp/core.c index 90d130588a3e..b1330acbbff3 100644 --- a/net/bluetooth/cmtp/core.c +++ b/net/bluetooth/cmtp/core.c @@ -88,15 +88,9 @@ static void __cmtp_copy_session(struct cmtp_session *session, struct cmtp_connin static inline int cmtp_alloc_block_id(struct cmtp_session *session) { - int i, id = -1; + int id = find_and_set_bit(&session->blockids, 16); - for (i = 0; i < 16; i++) - if (!test_and_set_bit(i, &session->blockids)) { - id = i; - break; - } - - return id; + return id < 16 ? id : -1; } static inline void cmtp_free_block_id(struct cmtp_session *session, int id) -- 2.39.2
Powered by blists - more mailing lists