From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 4BA8E13C831; Sun, 24 Mar 2024 23:46:41 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324002; cv=none; b=Z3dNTVbyM5ztLJA7KZi6IEALfsIbeMC+0M7Jt+5M028GjDwjc3TLDv+SXUSxNGw3BobBFi/w3IEr4kdkwOm2asGWA5YUH9iLDz3DspM+VOns+SeZE6gj1GxpsqFbSitvUuZ7mXhEPxhJDyYA/UGNHagTUoVXLOKeNwgZWhVzUEE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324002; c=relaxed/simple; bh=uYZDJMSq8ohf+7c0baTlmnKmzGCcgbGtrBM9HcZxHJg=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=JHoLvNtUkvesziD5fHgVuB847zPv/KwsS6DtD/Ykr5mi2kLutP1Q0gREuTI0W1HU+Dr11uG3MY1XfU90Lly/7LQoBcqE+nYGuTNcig+hhPB2KY5dyHJPrw1rh8zoYMTwaFqYpGOuze/OWjF/4nkSYD1f7mJh6Q3kB3ILoNPmoR4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=C5a77IsS; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="C5a77IsS" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 9911AC433C7; Sun, 24 Mar 2024 23:46:40 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324001; bh=uYZDJMSq8ohf+7c0baTlmnKmzGCcgbGtrBM9HcZxHJg=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=C5a77IsSuQAiAF6qJmFI+Vf9NEe1Jumr2qy8zgalOeDHK0Rm3+oeex+GuaCSdAUg9 1m368Go4Rrf9OU8WqnqeEdrXoDHw3n6udP7DLUzQsUaz4Omcyqw6uHiuivClbiVY1/ 2g4FB2ObGOAt0q/WurTU5Ejqn3hBjk0O+F73uzzG8Jg2k4SHFwWzUYn+KDdMzjy503 3l7clOBbY0GHEv5l4MtvhrLLS67iHYiH1Q0IfjvDb49sCndUJweCyd/WtpRDh0awsg r1d20NBTrBVVBKqp7nWVWDXOcPsnQmTfAo6vmSz+BSpnWDdkVi4hvbXeAtorlmGQdr 9kbT8cjRDVTBA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Jens Axboe , Sasha Levin Subject: [PATCH 5.4 001/183] io_uring/unix: drop usage of io_uring socket Date: Sun, 24 Mar 2024 19:43:34 -0400 Message-ID: <20240324234638.1355609-2-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Jens Axboe Commit a4104821ad651d8a0b374f0b2474c345bbb42f82 upstream. Since we no longer allow sending io_uring fds over SCM_RIGHTS, move to using io_is_uring_fops() to detect whether this is a io_uring fd or not. With that done, kill off io_uring_get_socket() as nobody calls it anymore. This is in preparation to yanking out the rest of the core related to unix gc with io_uring. Signed-off-by: Jens Axboe Signed-off-by: Sasha Levin --- fs/io_uring.c | 18 +++++------------- include/linux/fs.h | 6 +++--- net/core/scm.c | 2 +- net/unix/scm.c | 4 +--- 4 files changed, 10 insertions(+), 20 deletions(-) diff --git a/fs/io_uring.c b/fs/io_uring.c index 9de8961763b06..cd1858cc63206 100644 --- a/fs/io_uring.c +++ b/fs/io_uring.c @@ -381,19 +381,6 @@ static struct kmem_cache *req_cachep; =20 static const struct file_operations io_uring_fops; =20 -struct sock *io_uring_get_socket(struct file *file) -{ -#if defined(CONFIG_UNIX) - if (file->f_op =3D=3D &io_uring_fops) { - struct io_ring_ctx *ctx =3D file->private_data; - - return ctx->ring_sock->sk; - } -#endif - return NULL; -} -EXPORT_SYMBOL(io_uring_get_socket); - static void io_ring_ctx_ref_free(struct percpu_ref *ref) { struct io_ring_ctx *ctx =3D container_of(ref, struct io_ring_ctx, refs); @@ -3794,6 +3781,11 @@ static const struct file_operations io_uring_fops = =3D { .fasync =3D io_uring_fasync, }; =20 +bool io_is_uring_fops(struct file *file) +{ + return file->f_op =3D=3D &io_uring_fops; +} + static int io_allocate_scq_urings(struct io_ring_ctx *ctx, struct io_uring_params *p) { diff --git a/include/linux/fs.h b/include/linux/fs.h index e009b52ab6b0d..272f261894b17 100644 --- a/include/linux/fs.h +++ b/include/linux/fs.h @@ -3614,11 +3614,11 @@ extern int generic_fadvise(struct file *file, loff_= t offset, loff_t len, int advice); =20 #if defined(CONFIG_IO_URING) -extern struct sock *io_uring_get_socket(struct file *file); +bool io_is_uring_fops(struct file *file); #else -static inline struct sock *io_uring_get_socket(struct file *file) +static inline bool io_is_uring_fops(struct file *file) { - return NULL; + return false; } #endif =20 diff --git a/net/core/scm.c b/net/core/scm.c index 5525c14f33f1e..a442bf63cd480 100644 --- a/net/core/scm.c +++ b/net/core/scm.c @@ -105,7 +105,7 @@ static int scm_fp_copy(struct cmsghdr *cmsg, struct scm= _fp_list **fplp) if (fd < 0 || !(file =3D fget_raw(fd))) return -EBADF; /* don't allow io_uring files */ - if (io_uring_get_socket(file)) { + if (io_is_uring_fops(file)) { fput(file); return -EINVAL; } diff --git a/net/unix/scm.c b/net/unix/scm.c index e881a6e78af53..51b623de3be5f 100644 --- a/net/unix/scm.c +++ b/net/unix/scm.c @@ -33,10 +33,8 @@ struct sock *unix_get_socket(struct file *filp) /* PF_UNIX ? */ if (s && sock->ops && sock->ops->family =3D=3D PF_UNIX) u_sock =3D s; - } else { - /* Could be an io_uring instance */ - u_sock =3D io_uring_get_socket(filp); } + return u_sock; } EXPORT_SYMBOL(unix_get_socket); --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 7336D17E3BD; Sun, 24 Mar 2024 23:46:42 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324003; cv=none; b=iSjXhNNm/YwI83Y2ZhKeDlwZlxzvx0Cw4WJlY5RzyLWouB38wJFwwjnK2oqgY/JZXROdJPyC43bv53jB11TbV3tkAT4Kc75ZRDch/2SWBVkea0PMailxBxERx3eXEZ+ACfbQ3ErLuAj2Qv4HtTOxAr+rLTtHYXU4TuCwAhSr1QQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324003; c=relaxed/simple; bh=8SlzC+69nG3/1cKu3UH6WI7Twg+uVJqHbd/cBgcKaXs=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=A1uwrZh5OxcoHCxcdIPxkDKKKCP5NbCXeYsNV0bH41AWenywE9HTT0hS5PDOFvgsUmyHWr8M9V+Idn4Oh5kNuRu0Iqier5cKG4O8KPG9SNa9WojpaNA32tZs+hlpVlAXjYMikDgwbadyQNEIyYnmvsBwA7vzh4/zRLCSojLbb54= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=oLjAWsRj; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="oLjAWsRj" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 6A701C43390; Sun, 24 Mar 2024 23:46:41 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324002; bh=8SlzC+69nG3/1cKu3UH6WI7Twg+uVJqHbd/cBgcKaXs=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=oLjAWsRjl6MS63X0bnp1Efu/4hbcyIXpPo1uBF34F8utRkUJek7jqfhUQGWyR7nYJ i+bHg5pmR8Nh3ZkaY8mGcBz3R9ougPUcinK55H/NDI1/hvJL/jtuZRRiJS/mw64ngH aRO/e7XTyijE/7nvBPPZNotmO/V/prUZZXOdOSs9SnxqODQTDslCzJZelJ6HEIwafx +KEvTHVQkeIwML6P4MMaK63Y9V2SLoK4ju4Monn4qWJ3kFCkRIg44xT0Q+qomyVuNV gGuYab4/eIJ7PWLiXPig7ufFpyPSlAYD5IH8NAQODunNRfNviT/fZn9OylRaUk+rfa Tlj835I/KlblA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Jens Axboe , Sasha Levin Subject: [PATCH 5.4 002/183] io_uring: drop any code related to SCM_RIGHTS Date: Sun, 24 Mar 2024 19:43:35 -0400 Message-ID: <20240324234638.1355609-3-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Jens Axboe Commit 6e5e6d274956305f1fc0340522b38f5f5be74bdb upstream. This is dead code after we dropped support for passing io_uring fds over SCM_RIGHTS, get rid of it. Signed-off-by: Jens Axboe Signed-off-by: Sasha Levin --- fs/io_uring.c | 47 +++-------------------------------------------- 1 file changed, 3 insertions(+), 44 deletions(-) diff --git a/fs/io_uring.c b/fs/io_uring.c index cd1858cc63206..2c793e4ccf096 100644 --- a/fs/io_uring.c +++ b/fs/io_uring.c @@ -63,7 +63,6 @@ #include #include #include -#include #include #include #include @@ -264,10 +263,6 @@ struct io_ring_ctx { =20 struct async_list pending_async[2]; =20 -#if defined(CONFIG_UNIX) - struct socket *ring_sock; -#endif - struct list_head task_list; spinlock_t task_lock; }; @@ -3067,20 +3062,10 @@ static int io_cqring_wait(struct io_ring_ctx *ctx, = int min_events, =20 static void __io_sqe_files_unregister(struct io_ring_ctx *ctx) { -#if defined(CONFIG_UNIX) - if (ctx->ring_sock) { - struct sock *sock =3D ctx->ring_sock->sk; - struct sk_buff *skb; - - while ((skb =3D skb_dequeue(&sock->sk_receive_queue)) !=3D NULL) - kfree_skb(skb); - } -#else int i; =20 for (i =3D 0; i < ctx->nr_user_files; i++) fput(ctx->user_files[i]); -#endif } =20 static int io_sqe_files_unregister(struct io_ring_ctx *ctx) @@ -3575,13 +3560,6 @@ static void io_ring_ctx_free(struct io_ring_ctx *ctx) io_sqe_files_unregister(ctx); io_eventfd_unregister(ctx); =20 -#if defined(CONFIG_UNIX) - if (ctx->ring_sock) { - ctx->ring_sock->file =3D NULL; /* so that iput() is called */ - sock_release(ctx->ring_sock); - } -#endif - io_mem_free(ctx->rings); io_mem_free(ctx->sq_sqes); =20 @@ -3833,45 +3811,26 @@ static int io_allocate_scq_urings(struct io_ring_ct= x *ctx, /* * Allocate an anonymous fd, this is what constitutes the application * visible backing of an io_uring instance. The application mmaps this - * fd to gain access to the SQ/CQ ring details. If UNIX sockets are enable= d, - * we have to tie this fd to a socket for file garbage collection purposes. + * fd to gain access to the SQ/CQ ring details. */ static int io_uring_get_fd(struct io_ring_ctx *ctx) { struct file *file; int ret; =20 -#if defined(CONFIG_UNIX) - ret =3D sock_create_kern(&init_net, PF_UNIX, SOCK_RAW, IPPROTO_IP, - &ctx->ring_sock); - if (ret) - return ret; -#endif - ret =3D get_unused_fd_flags(O_RDWR | O_CLOEXEC); if (ret < 0) - goto err; + return ret; =20 file =3D anon_inode_getfile("[io_uring]", &io_uring_fops, ctx, O_RDWR | O_CLOEXEC); if (IS_ERR(file)) { put_unused_fd(ret); - ret =3D PTR_ERR(file); - goto err; + return PTR_ERR(file); } =20 -#if defined(CONFIG_UNIX) - ctx->ring_sock->file =3D file; - ctx->ring_sock->sk->sk_user_data =3D ctx; -#endif fd_install(ret, file); return ret; -err: -#if defined(CONFIG_UNIX) - sock_release(ctx->ring_sock); - ctx->ring_sock =3D NULL; -#endif - return ret; } =20 static int io_uring_create(unsigned entries, struct io_uring_params *p) --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 779BF17EB63; Sun, 24 Mar 2024 23:46:43 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324004; cv=none; b=t95S/rLaHqZvhJHIqrQM41OZ/iQbGbK2nGz8yYgg/7dk9v5XGPHejT1Auvklk6NxpOCKxPWLPbcmzY6qj+EsQ5Tp8aRNHVFIBkrLxeJoFece3MqHEyKpTwnpSVJWSlUar0wgiKgu03vFgqXupPsGld/1RNstt2g6ldnMwdb/O1g= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324004; c=relaxed/simple; bh=GFFbQlzh6HC4SDDh95NsXiORtcwm6elGZF0AA+G9MdQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=KV9z4aDI1XWt8N6ua7SaJS8Y9COtLapw0dRWdByOgQ3IOodMgwGo/U47ozpAMbxkYf5tPAnSzot9ib/12FsUPB9GJ+DUsoVcroyaQZGArLk8LuYkdQONs8SG48uOQ7BOI613SsBdF2dIAG05FKDE4X0Ioyp2ckHP+h7pXkFTJQw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=AnBZ3zVA; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="AnBZ3zVA" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 401BFC43394; Sun, 24 Mar 2024 23:46:42 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324003; bh=GFFbQlzh6HC4SDDh95NsXiORtcwm6elGZF0AA+G9MdQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=AnBZ3zVAhG+M6fEuOJnlP4PKU52wHFlAhRxTFXCy7jdjqTOX20MJVttveydTiKNAg tTr8dWzKftpMieEhkzEHO0VbTcUJPtoR87UFZdMuosUhgNzAibQkF4KU3y45RUKkcS 8s5bR6iP/1UoGfK3alkFXn1xR2bBMEgN6+79mjq7YmQovpyT2H9DEfpwaCfIyypwWK DqxI6o2Xy9yW1zcacnJft7oosIVZHbJvLKsffZPs+VDw0x7zqZg041IFA9ZB07pR5v j5wQ5SLmDbu859dAhbIp+OcCvuZfZQt/fpZ5c1lKARX5F29D5N/TyAC0WEOAp6bUxu ObYEMk5z5clhw== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Jakub Kicinski , Simon Horman , "David S . Miller" , Sasha Levin Subject: [PATCH 5.4 003/183] selftests: tls: use exact comparison in recv_partial Date: Sun, 24 Mar 2024 19:43:36 -0400 Message-ID: <20240324234638.1355609-4-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Jakub Kicinski [ Upstream commit 49d821064c44cb5ffdf272905236012ea9ce50e3 ] This exact case was fail for async crypto and we weren't catching it. Signed-off-by: Jakub Kicinski Reviewed-by: Simon Horman Signed-off-by: David S. Miller Signed-off-by: Sasha Levin --- tools/testing/selftests/net/tls.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/tools/testing/selftests/net/tls.c b/tools/testing/selftests/ne= t/tls.c index 837206dbe5d6e..81bb3cc6704f8 100644 --- a/tools/testing/selftests/net/tls.c +++ b/tools/testing/selftests/net/tls.c @@ -580,12 +580,12 @@ TEST_F(tls, recv_partial) =20 memset(recv_mem, 0, sizeof(recv_mem)); EXPECT_EQ(send(self->fd, test_str, send_len, 0), send_len); - EXPECT_NE(recv(self->cfd, recv_mem, strlen(test_str_first), - MSG_WAITALL), -1); + EXPECT_EQ(recv(self->cfd, recv_mem, strlen(test_str_first), + MSG_WAITALL), strlen(test_str_first)); EXPECT_EQ(memcmp(test_str_first, recv_mem, strlen(test_str_first)), 0); memset(recv_mem, 0, sizeof(recv_mem)); - EXPECT_NE(recv(self->cfd, recv_mem, strlen(test_str_second), - MSG_WAITALL), -1); + EXPECT_EQ(recv(self->cfd, recv_mem, strlen(test_str_second), + MSG_WAITALL), strlen(test_str_second)); EXPECT_EQ(memcmp(test_str_second, recv_mem, strlen(test_str_second)), 0); } --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 5F70717EB69; Sun, 24 Mar 2024 23:46:43 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324005; cv=none; b=Vy/6/LFWKMrJ5DW2EoOwh6bZOgRzzsSYR6wyV0ICOcj1t6pfputDyFcUofmD/oZQlMyl4WD7Upftpny9/IwUPjxMqwTovuXiQJqc5QV4U/+KBe1neJ9utAcqNmPEmJmUIkN7Fq3c9VrVFymsaQcK71zXf3iPoLrEX58sDiJmSmc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324005; c=relaxed/simple; bh=5gEzrD119tj6hsJgRdf2pITbVhppAiihu13s8fHpiOo=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=HEPckGPbRJgfGNwl0JOsdekyeYuE95z0ezfIBz75bSY+s/HLDzsxOurp35Dp+miFNZlGlIYRGMGHmSz9j3NJ7sWM6/sw3Q7K8UFp0Vo7PNoRL22/H03cRGclmMgXBGmWSPu/s9AhzBSoBl37jAiIvtm8sykIq/YjOBOgkfB0qOI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=smqdlmND; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="smqdlmND" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 3E9D2C433F1; Sun, 24 Mar 2024 23:46:43 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324003; bh=5gEzrD119tj6hsJgRdf2pITbVhppAiihu13s8fHpiOo=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=smqdlmND9yOY6Q+ZWfP/8CVZfxIQnhMv+X3a/RrUirphSvg2OnO5JwRBOsSJzsEKv bcFLNqi1u73M2ZdyayVr3bhVZ0EyC3HE4CSCrT8635UHs6niS9MnrGIci74wHI9VNg QiRV5ZyjE4IOEVOUsCizRJM4mbdecnzhaVAyC2bh0mUvfArPAaqlDiU8Kge2OvHVto Nkbb+jfJtTYqaOIADq5n9D1aMH2PBI6HhJUPzC8j+hzYY0XhGwOyMwHWo1UPKD8yX5 rWcJmr4NI8uH7aVeEAU0GpXlqHal+ctBu5SdxXTQiosHS4jOx/O256FpPa5Xp2qzAk pp0clYG0TXKJQ== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Hans de Goede , Mark Brown , Sasha Levin Subject: [PATCH 5.4 004/183] ASoC: rt5645: Make LattePanda board DMI match more precise Date: Sun, 24 Mar 2024 19:43:37 -0400 Message-ID: <20240324234638.1355609-5-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Hans de Goede [ Upstream commit 551539a8606e28cb2a130f8ef3e9834235b456c4 ] The DMI strings used for the LattePanda board DMI quirks are very generic. Using the dmidecode database from https://linux-hardware.org/ shows that the chosen DMI strings also match the following 2 laptops which also have a rt5645 codec: Insignia NS-P11W7100 https://linux-hardware.org/?computer=3DE092FFF8BA04 Insignia NS-P10W8100 https://linux-hardware.org/?computer=3DAFB6C0BF7934 All 4 hw revisions of the LattePanda board have "S70CR" in their BIOS version DMI strings: DF-BI-7-S70CR100-* DF-BI-7-S70CR110-* DF-BI-7-S70CR200-* LP-BS-7-S70CR700-* See e.g. https://linux-hardware.org/?computer=3DD98250A817C0 Add a partial (non exact) DMI match on this string to make the LattePanda board DMI match more precise to avoid false-positive matches. Signed-off-by: Hans de Goede Link: https://msgid.link/r/20240211212736.179605-1-hdegoede@redhat.com Signed-off-by: Mark Brown Signed-off-by: Sasha Levin --- sound/soc/codecs/rt5645.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/sound/soc/codecs/rt5645.c b/sound/soc/codecs/rt5645.c index 88093e58dd845..c78d5833c9cd9 100644 --- a/sound/soc/codecs/rt5645.c +++ b/sound/soc/codecs/rt5645.c @@ -3766,6 +3766,16 @@ static const struct dmi_system_id dmi_platform_data[= ] =3D { DMI_EXACT_MATCH(DMI_BOARD_VENDOR, "AMI Corporation"), DMI_EXACT_MATCH(DMI_BOARD_NAME, "Cherry Trail CR"), DMI_EXACT_MATCH(DMI_BOARD_VERSION, "Default string"), + /* + * Above strings are too generic, LattePanda BIOS versions for + * all 4 hw revisions are: + * DF-BI-7-S70CR100-* + * DF-BI-7-S70CR110-* + * DF-BI-7-S70CR200-* + * LP-BS-7-S70CR700-* + * Do a partial match for S70CR to avoid false positive matches. + */ + DMI_MATCH(DMI_BIOS_VERSION, "S70CR"), }, .driver_data =3D (void *)&lattepanda_board_platform_data, }, --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 11E9D17EB67; Sun, 24 Mar 2024 23:46:45 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324005; cv=none; b=YEu+dCHeXIlWeDJGD4QHKlNf+9VSgpG8HxSn5TUnAzOVEUNJU4rJQJEYmvSV1wNZvHCzt3st9jUNnFoM09rR5PwPQClqLhGDiHk8ch16onanr/KoyUFqd56rdk/ETqjg7IfiODdBEU5q+s0bxzQ68WD+pOyrutQjMO/CB1j2IF0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324005; c=relaxed/simple; bh=KXobGiOoIaXzXOXJJJNhZJEIoAnZhnUZnhGA9Ii+OtU=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=tp/W/GQkKophMI1VmVsDv62Fjl/i/+ouUApNMKFmYJaOkCsA5RLNT3IrGtJh1dOZ0AE9QRoDVexdKbOmnEEABP5tSRl5EFWwtazSVIThwZRA1lvZl5lJABB4+6obs6uvJNdj4CBmWt7VfJdwUHLRZbdsYI1X1AnbRg79SXdHscw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=VoGDuPqC; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="VoGDuPqC" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 22FC0C43390; Sun, 24 Mar 2024 23:46:44 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324004; bh=KXobGiOoIaXzXOXJJJNhZJEIoAnZhnUZnhGA9Ii+OtU=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=VoGDuPqCcvjXN5CRvzn6U0xJGz2xct/SwbRbcf9y2fIySA/sQTDlQ/sWF0Do7TRvN wF6rNOI4XRCgjzbk22r0Afy3y4D0u/litnBcl98C2xeA0SCn2UvtIBWNSJkvuuZyxK N+guD7Mj2MrBWZ98GKEiSfu8ncd2uBmcaEVy7PWjfExJfV8Fwtyx5ERAJ9gmerRKv+ ItP7kK7z0Hzkquu0q3RGfu/3QYPpKTaVmhI3upok0XMsYt6M9+fFJFBjbsBwtq5x4b hbSwsHPHaClBrJH7ysDQFf7Cr2KUuoFHB/2wp53Viu+Ci33JPnKKPJ/d5oelw6Uboz vL/vXRryNTKAQ== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Kunwu Chan , kernel test robot , Markus Elfring , Juergen Gross , Sasha Levin Subject: [PATCH 5.4 005/183] x86/xen: Add some null pointer checking to smp.c Date: Sun, 24 Mar 2024 19:43:38 -0400 Message-ID: <20240324234638.1355609-6-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Kunwu Chan [ Upstream commit 3693bb4465e6e32a204a5b86d3ec7e6b9f7e67c2 ] kasprintf() returns a pointer to dynamically allocated memory which can be NULL upon failure. Ensure the allocation was successful by checking the pointer validity. Signed-off-by: Kunwu Chan Reported-by: kernel test robot Closes: https://lore.kernel.org/oe-kbuild-all/202401161119.iof6BQsf-lkp@int= el.com/ Suggested-by: Markus Elfring Reviewed-by: Juergen Gross Link: https://lore.kernel.org/r/20240119094948.275390-1-chentao@kylinos.cn Signed-off-by: Juergen Gross Signed-off-by: Sasha Levin --- arch/x86/xen/smp.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/arch/x86/xen/smp.c b/arch/x86/xen/smp.c index a1cc855c539c1..a76ba342a6695 100644 --- a/arch/x86/xen/smp.c +++ b/arch/x86/xen/smp.c @@ -65,6 +65,8 @@ int xen_smp_intr_init(unsigned int cpu) char *resched_name, *callfunc_name, *debug_name; =20 resched_name =3D kasprintf(GFP_KERNEL, "resched%d", cpu); + if (!resched_name) + goto fail_mem; per_cpu(xen_resched_irq, cpu).name =3D resched_name; rc =3D bind_ipi_to_irqhandler(XEN_RESCHEDULE_VECTOR, cpu, @@ -77,6 +79,8 @@ int xen_smp_intr_init(unsigned int cpu) per_cpu(xen_resched_irq, cpu).irq =3D rc; =20 callfunc_name =3D kasprintf(GFP_KERNEL, "callfunc%d", cpu); + if (!callfunc_name) + goto fail_mem; per_cpu(xen_callfunc_irq, cpu).name =3D callfunc_name; rc =3D bind_ipi_to_irqhandler(XEN_CALL_FUNCTION_VECTOR, cpu, @@ -90,6 +94,9 @@ int xen_smp_intr_init(unsigned int cpu) =20 if (!xen_fifo_events) { debug_name =3D kasprintf(GFP_KERNEL, "debug%d", cpu); + if (!debug_name) + goto fail_mem; + per_cpu(xen_debug_irq, cpu).name =3D debug_name; rc =3D bind_virq_to_irqhandler(VIRQ_DEBUG, cpu, xen_debug_interrupt, @@ -101,6 +108,9 @@ int xen_smp_intr_init(unsigned int cpu) } =20 callfunc_name =3D kasprintf(GFP_KERNEL, "callfuncsingle%d", cpu); + if (!callfunc_name) + goto fail_mem; + per_cpu(xen_callfuncsingle_irq, cpu).name =3D callfunc_name; rc =3D bind_ipi_to_irqhandler(XEN_CALL_FUNCTION_SINGLE_VECTOR, cpu, @@ -114,6 +124,8 @@ int xen_smp_intr_init(unsigned int cpu) =20 return 0; =20 + fail_mem: + rc =3D -ENOMEM; fail: xen_smp_intr_free(cpu); return rc; --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B811717EB77; Sun, 24 Mar 2024 23:46:45 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324007; cv=none; b=o+pHBhJg4Mk2v/s2i+vvJAYXri2yF3XUdhoe1VP2O/WVcDJFm6G+YowZQtDE/zwZyCf8Cty+aDukgkXyDB+/cF/8RN+FJzZIUA1T3p+SDRS+tQV1BQr5pp+M/DRxlRAq2YH8SNR5cprgs+Et+y+BLU5ueZT568vBs4WAR8orWHc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324007; c=relaxed/simple; bh=tfnOGd7pf3A5f59RWHth3GLkpWlXj5gee4oTcfvY3k4=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=m1zdmETUhGnkiO72LpZcHL8BbP7hLJ8fGM5Q/snxQRj4iA1prIxbeXqTbFgeKLrpE0yZBw9y1nw08OpO5TrHc1cWCpREqu/+mp9w9w9ieC0xH7CVPyP17qcusPIvWAmzMQOoSwNp9uBnpVYx9kFvR4jB3dr/jPVU02PTwxdgxgE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=k1ET/F54; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="k1ET/F54" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 37704C433C7; Sun, 24 Mar 2024 23:46:45 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324005; bh=tfnOGd7pf3A5f59RWHth3GLkpWlXj5gee4oTcfvY3k4=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=k1ET/F54SOOdF0LWnukss+kX0eRRzgPIKBC7qgsbh195/gpthK5BB8iKGOq+LmPcW kuvipTxWi60JBgqTzP4sbQVLuGHqeqGGm4LN3RxTZnhHS+OHzrD7gpbYNL1lASyk22 cXP4eZUQJ5WiPFWGdv+VnFxzy9J+2604HrTIyquPZeVpsau6HEEX1N/vBh6CNBgE4H EqHds3V2ucnR+7yqXImccaqaNk/jm6jetkzGqOk/kdlnM3b40TFXQaQdiDCSTyO/44 TjOJABY8YZ2VO+sxt6H/lgIktN0HK/ofEOZBUUhMZJRQthJJ4RV418ivjRlzWcYxjd dpa0mm6E7fwUg== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Jiaxun Yang , Thomas Bogendoerfer , Sasha Levin Subject: [PATCH 5.4 006/183] MIPS: Clear Cause.BD in instruction_pointer_set Date: Sun, 24 Mar 2024 19:43:39 -0400 Message-ID: <20240324234638.1355609-7-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Jiaxun Yang [ Upstream commit 9d6e21ddf20293b3880ae55b9d14de91c5891c59 ] Clear Cause.BD after we use instruction_pointer_set to override EPC. This can prevent exception_epc check against instruction code at new return address. It won't be considered as "in delay slot" after epc being overridden anyway. Signed-off-by: Jiaxun Yang Signed-off-by: Thomas Bogendoerfer Signed-off-by: Sasha Levin --- arch/mips/include/asm/ptrace.h | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/mips/include/asm/ptrace.h b/arch/mips/include/asm/ptrace.h index 1e76774b36ddf..2849a9b65a055 100644 --- a/arch/mips/include/asm/ptrace.h +++ b/arch/mips/include/asm/ptrace.h @@ -60,6 +60,7 @@ static inline void instruction_pointer_set(struct pt_regs= *regs, unsigned long val) { regs->cp0_epc =3D val; + regs->cp0_cause &=3D ~CAUSEF_BD; } =20 /* Query offset/name of register from its name/offset */ --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 2616C17EB7A; Sun, 24 Mar 2024 23:46:46 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324008; cv=none; b=IGRXn2PToLk3saSO6QiEv2Nfz7eXOTaNfpxF2ZQE5xPygC1mb4EbUGYBu8+0booPL/4lhcR978aSkXhKjt9+Z/0g7VR7y1aAI1BmvaLK+WpJ40Jj9CuDnIT3Y7/sf6t0bGR5R2/vBkSZTYGxUWFnEcOlGtlJ4vl1PAeP9C2p7rU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324008; c=relaxed/simple; bh=6zsh90FjlNz03vkNYYf8ZUIghWHUOsxZgTKLCL4hVMM=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=Ja1lqz7a+bjYR3gUaDv0mbBeMNKE4P6yPOBNsrzxn04YrI/mW0HjQR6FhXHeUBKN75IKPx3AMoXaZTMfr4siFpKPmgj7CvQQEWMDRx4097M/pwzqy5J9mkSyIZprSilHraNpxgGnmlgsr0xuu8Pzcau+UEJnDf5KJIkfQ7BG+mE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=MXDyNkkl; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="MXDyNkkl" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 1BBBDC433F1; Sun, 24 Mar 2024 23:46:46 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324006; bh=6zsh90FjlNz03vkNYYf8ZUIghWHUOsxZgTKLCL4hVMM=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=MXDyNkklRmk52bcbitSxR/aF337OSF+q6tFmarZR9rvz7BNR5kPHrJ7PQx6UxJDDv kGznPmjiRKrySsTcox+XO52wehabY/gvr1DV8928DqZ3jJCuEKqA9Hxf1elLZAFB5R N88M3gcrBFDCYDOhyRaEI/A+1gL0m136YQyAP2CE54melwnt6SIzjWsJBZGkn9SN3O piFE/UWHMKjKIaz15PA0o+izfYpqXnl/ptCzykWW3fbpIhFfNvLJyPKwJK+HLrYspu BkMr2wz8f0RMCfHhJwSvpSDpQOTXyhUX5Zrp6mBmB7cwqZc5S5KPeiBDoyeXQtifU8 Tb8Bi10vo2NxQ== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Manuel Fombuena , Jiri Kosina , Sasha Levin Subject: [PATCH 5.4 007/183] HID: multitouch: Add required quirk for Synaptics 0xcddc device Date: Sun, 24 Mar 2024 19:43:40 -0400 Message-ID: <20240324234638.1355609-8-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Manuel Fombuena [ Upstream commit 1741a8269e1c51fa08d4bfdf34667387a6eb10ec ] Add support for the pointing stick (Accupoint) and 2 mouse buttons. Present on some Toshiba/dynabook Portege X30 and X40 laptops. It should close https://bugzilla.kernel.org/show_bug.cgi?id=3D205817 Signed-off-by: Manuel Fombuena Signed-off-by: Jiri Kosina Signed-off-by: Sasha Levin --- drivers/hid/hid-multitouch.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/hid/hid-multitouch.c b/drivers/hid/hid-multitouch.c index c37399f61c67b..c3810e7140a55 100644 --- a/drivers/hid/hid-multitouch.c +++ b/drivers/hid/hid-multitouch.c @@ -2090,6 +2090,10 @@ static const struct hid_device_id mt_devices[] =3D { HID_DEVICE(BUS_I2C, HID_GROUP_MULTITOUCH_WIN_8, USB_VENDOR_ID_SYNAPTICS, 0xcd7e) }, =20 + { .driver_data =3D MT_CLS_WIN_8_FORCE_MULTI_INPUT, + HID_DEVICE(BUS_I2C, HID_GROUP_MULTITOUCH_WIN_8, + USB_VENDOR_ID_SYNAPTICS, 0xcddc) }, + { .driver_data =3D MT_CLS_WIN_8_FORCE_MULTI_INPUT, HID_DEVICE(BUS_I2C, HID_GROUP_MULTITOUCH_WIN_8, USB_VENDOR_ID_SYNAPTICS, 0xce08) }, --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id E71B713C83C; Sun, 24 Mar 2024 23:46:47 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324008; cv=none; b=nI2c5FXdZnHn3Xp7cuB70aHkx0KjhJDnZHcbrwj31+Z/4P1EucYja3VsyC6v9VLy4rp5iaU+I84fZItZkZqpi4TlwJnSlxLXwLF8ZqdynPTclAHKETsJmPQzubjjoTpk5tXX2AsmKnF6/OLRJIz6q7ZbRSW6ZTdPaALRfWds+lg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324008; c=relaxed/simple; bh=q/zQI/aVAcj6DReUdBtfbzpmGks9RLFWREZi7JOicZU=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=bzbVCKHrK9medmdto64GbR8aREfh6pFm82pNNTGonGw/1mt/mHBqYW0kU1KtQvZh/JSyWskhuuUfUDfLhiM4hgaDqyEUI8OWk2j1sXukjA2muLkck7qMIIxhPkM9f6clwv5XLgJSqLCMnqpuRNFOJgqE264qnTpIqrNlVpSiIv4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=BTtSQJ5t; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="BTtSQJ5t" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 024BAC43390; Sun, 24 Mar 2024 23:46:46 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324007; bh=q/zQI/aVAcj6DReUdBtfbzpmGks9RLFWREZi7JOicZU=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=BTtSQJ5tHjGaIJaD5DM+uU+jbDlkdJbzsa4YqiTKRQr8USy9ifwrOB7RwOWi1S5aG YG6gPpkUFPFDbd12l3Uz1vGWFpdiRbWWy4FVIbWoleGzCCn4PMdgVEWEJcMswWAOlS 2va2KIA0GTA/q6MnL593fXvnb/VVpA0t49ZO7uliZupQO95ldL5wKrRGqIWgTMdoEL 1KK8uu3eqa/oZeAg1AQe3Vor0QxFnclOH+eu9ulCvjqCF3SZbbwdhz5POg0UxMeaMU MnQDYd/BOR5tg2VP+KuXo0hZrCVItK0gNJqISRBaaKteSy0LsUv0uCwSZNEC1kUNPG tRhXS17E+Qqsw== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Yishai Hadas , Tamar Mashiah , Michael Guralnik , Leon Romanovsky , Sasha Levin Subject: [PATCH 5.4 008/183] RDMA/mlx5: Relax DEVX access upon modify commands Date: Sun, 24 Mar 2024 19:43:41 -0400 Message-ID: <20240324234638.1355609-9-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Yishai Hadas [ Upstream commit be551ee1574280ef8afbf7c271212ac3e38933ef ] Relax DEVX access upon modify commands to be UVERBS_ACCESS_READ. The kernel doesn't need to protect what firmware protects, or what causes no damage to anyone but the user. As firmware needs to protect itself from parallel access to the same object, don't block parallel modify/query commands on the same object in the kernel side. This change will allow user space application to run parallel updates to different entries in the same bulk object. Tested-by: Tamar Mashiah Signed-off-by: Yishai Hadas Reviewed-by: Michael Guralnik Link: https://lore.kernel.org/r/7407d5ed35dc427c1097699e12b49c01e1073406.17= 06433934.git.leon@kernel.org Signed-off-by: Leon Romanovsky Signed-off-by: Sasha Levin --- drivers/infiniband/hw/mlx5/devx.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/infiniband/hw/mlx5/devx.c b/drivers/infiniband/hw/mlx5= /devx.c index 26cc7bbcdfe6a..7a3b56c150799 100644 --- a/drivers/infiniband/hw/mlx5/devx.c +++ b/drivers/infiniband/hw/mlx5/devx.c @@ -2811,7 +2811,7 @@ DECLARE_UVERBS_NAMED_METHOD( MLX5_IB_METHOD_DEVX_OBJ_MODIFY, UVERBS_ATTR_IDR(MLX5_IB_ATTR_DEVX_OBJ_MODIFY_HANDLE, UVERBS_IDR_ANY_OBJECT, - UVERBS_ACCESS_WRITE, + UVERBS_ACCESS_READ, UA_MANDATORY), UVERBS_ATTR_PTR_IN( MLX5_IB_ATTR_DEVX_OBJ_MODIFY_CMD_IN, --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id E6F0D17EB7D; Sun, 24 Mar 2024 23:46:48 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324010; cv=none; b=m4ymnkEyoMgJpbRMHbNS1+/IITIqf6MwTa8j90WYTWK3yVjhIncLBwWWCFdrreISrj+NVRfyMWk0+LacsqKL2qVp7G+Kps9IN4CJUlgO2im6S2f7JpyfWpRSZUmp5JdjiAz+5Fjopm9E4TSE+yqhV8j+RObnzCjV3Q7h4Ew8Pq8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324010; c=relaxed/simple; bh=C0gSXFhMFIQyyEvs+6TeLlPz+LAlhzCRatW1d/j8fyE=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=T57Jsj4OMGQPVJhkG0NDjn6SfZrTdaN76VA2t7xiAjMD14h/WWS1uKdI8oPA9ar0uuktyb0PFnwA/+4D3BncrsRmdL1MpWTg7WuFdzQVWdQsBJB8WbufoS5afyHzAN40wC9BXpdM6K2KT0X/XMKmSbP4XB8FynL0A+PG8BjVXl0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=ZAUKJ+Tj; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="ZAUKJ+Tj" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 1984CC433A6; Sun, 24 Mar 2024 23:46:48 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324008; bh=C0gSXFhMFIQyyEvs+6TeLlPz+LAlhzCRatW1d/j8fyE=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=ZAUKJ+TjTkxqCRYbHEY6+3Zyh4u/uncy9oCrRE1wnnt0Xx8mnROwWC+RtDehcoONB 6Q0eiooBFKLaMRNPazeGFvuxJvfGyqIoBrktVs7NXoURgKkWMTYejcAIC4QJZJEB3H ot0jWag1vdS3CnqTuR57Hg09534DkARxIbqsQHczDy9MapG/hS7CSqWEIfN6azWM3K SnimZxjybQs9yhxlnmp/dh0AT92n4H7pjDuHeF2rf7B7m9opBAbst22Efz1pt5FcYs pzPqi7jpmzCanGLL8yVvx10OjA7oKv93cqNiCu8szrSBkMMCG3jSgIryY24YNhDE8k 4L0H6WWGCwaSA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Alexander Gordeev , Alexandra Winter , "David S . Miller" , Sasha Levin Subject: [PATCH 5.4 009/183] net/iucv: fix the allocation size of iucv_path_table array Date: Sun, 24 Mar 2024 19:43:42 -0400 Message-ID: <20240324234638.1355609-10-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Alexander Gordeev [ Upstream commit b4ea9b6a18ebf7f9f3a7a60f82e925186978cfcf ] iucv_path_table is a dynamically allocated array of pointers to struct iucv_path items. Yet, its size is calculated as if it was an array of struct iucv_path items. Signed-off-by: Alexander Gordeev Reviewed-by: Alexandra Winter Signed-off-by: David S. Miller Signed-off-by: Sasha Levin --- net/iucv/iucv.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/net/iucv/iucv.c b/net/iucv/iucv.c index 392f8ddf97191..8b5b8cc93ff8b 100644 --- a/net/iucv/iucv.c +++ b/net/iucv/iucv.c @@ -179,7 +179,7 @@ static char iucv_error_pathid[16] =3D "INVALID PATHID"; static LIST_HEAD(iucv_handler_list); =20 /* - * iucv_path_table: an array of iucv_path structures. + * iucv_path_table: array of pointers to iucv_path structures. */ static struct iucv_path **iucv_path_table; static unsigned long iucv_max_pathid; @@ -590,7 +590,7 @@ static int iucv_enable(void) =20 get_online_cpus(); rc =3D -ENOMEM; - alloc_size =3D iucv_max_pathid * sizeof(struct iucv_path); + alloc_size =3D iucv_max_pathid * sizeof(*iucv_path_table); iucv_path_table =3D kzalloc(alloc_size, GFP_KERNEL); if (!iucv_path_table) goto out; --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id CC66617EB7C; Sun, 24 Mar 2024 23:46:49 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324009; cv=none; b=jP7uNs6DnmiBtJhoPRUHeuWAojZbFPpLKC650LtL/Oiw1SMf1WOKCIQFl2ibKA+a0ssDyCZtixmR4jZGFKzgCJmJOGAFwqWQOybwSK/4GybBl7w7zdv6uZ30gFJ/yboEk4Tsx21CGnP3Gpe8aQmeLMD+YgpsWXMMJfyRbwFFBdo= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324009; c=relaxed/simple; bh=w3wXilM/p6r1VZTb0UA83Y9zrU52YRn0KjPnNsyVecQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=V5/XSxnTajBwDxStb4Kfw1JMTXa2wDC788ev6sxI7w4bvQkKouFYf9bblSxPhO9440cT6VJ8KC0gw8di6pRnvLwMNVrP8BpQJd4n1NcbsOKpOgwiwqES2lhtza/X5vz2/Bmk1bwRdBQTQrDsGXbWFmsiPcl4gkHNYEurouUNPIg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=MWNM0D0A; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="MWNM0D0A" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 1373BC433F1; Sun, 24 Mar 2024 23:46:48 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324009; bh=w3wXilM/p6r1VZTb0UA83Y9zrU52YRn0KjPnNsyVecQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=MWNM0D0ATuVIvgW+RAAea35ZOghrUCHCEG9k/AElGQ2OYFHDJsC+/Cglf7W9Wf9oB uh0qcca2EBAeA+xI/7CpzgR4bSh6YNxMewqNO7xxoLZCbu//9sv8ARAhmL7cEFb9qe OqjkggA8hHIty6MB8ZY0ZsCb4uWrJ1zbAYZKUNEbiIVqFPCuIv0UqxH16/LcwSnHdj NuphRVTNXuX15cX4/odRlmZCnHv6c8Tyg+cCEVoiOwVRMdWudb0nHYnmekxKV27BYg QiIA1y3z8kcBF3roHpkSrj/VCZNVm2e2LsLuEnUF/XW0UssbF392TbVzHKu9xUiTLf wEdycJlzi5+rg== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Max Kellermann , Helge Deller , Sasha Levin Subject: [PATCH 5.4 010/183] parisc/ftrace: add missing CONFIG_DYNAMIC_FTRACE check Date: Sun, 24 Mar 2024 19:43:43 -0400 Message-ID: <20240324234638.1355609-11-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Max Kellermann [ Upstream commit 250f5402e636a5cec9e0e95df252c3d54307210f ] Fixes a bug revealed by -Wmissing-prototypes when CONFIG_FUNCTION_GRAPH_TRACER is enabled but not CONFIG_DYNAMIC_FTRACE: arch/parisc/kernel/ftrace.c:82:5: error: no previous prototype for 'ftrace= _enable_ftrace_graph_caller' [-Werror=3Dmissing-prototypes] 82 | int ftrace_enable_ftrace_graph_caller(void) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ arch/parisc/kernel/ftrace.c:88:5: error: no previous prototype for 'ftrace= _disable_ftrace_graph_caller' [-Werror=3Dmissing-prototypes] 88 | int ftrace_disable_ftrace_graph_caller(void) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Signed-off-by: Max Kellermann Signed-off-by: Helge Deller Signed-off-by: Sasha Levin --- arch/parisc/kernel/ftrace.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/parisc/kernel/ftrace.c b/arch/parisc/kernel/ftrace.c index b836fc61a24f4..f3a5c5e480cf0 100644 --- a/arch/parisc/kernel/ftrace.c +++ b/arch/parisc/kernel/ftrace.c @@ -80,7 +80,7 @@ void notrace __hot ftrace_function_trampoline(unsigned lo= ng parent, #endif } =20 -#ifdef CONFIG_FUNCTION_GRAPH_TRACER +#if defined(CONFIG_DYNAMIC_FTRACE) && defined(CONFIG_FUNCTION_GRAPH_TRACER) int ftrace_enable_ftrace_graph_caller(void) { return 0; --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id DE2F617EB84; Sun, 24 Mar 2024 23:46:50 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324011; cv=none; b=oS1UaZr5xy3yFIc9a0sHwM3FciaEPuGcST46DMWJNJJC8sI0ArmziqkRWNpLxSXj+lGIaZ+uwNDJh9k6ivYUtuRcjU6Dj9zT3x/1ruKuKcFKawn0h0vN+xV5LdkXV/vAN/UITXacK+gKGN5mygBwSSrFRMXPgKG2Laq+XDCB3RI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324011; c=relaxed/simple; bh=CoV07kSb/A/ldhgRhAX040faYNYxN/IJ9SXNczYn0wc=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=CWRfwEnXp+Nu8y3CxxMJVCPgYjmQ98ZLhXq/hp40/hYxC4WC2VOKg67i5PGFRUWy4YUDiQeSBKT2t8cRiJdXyKtQf/IXnyAG74ck4gdGDZHpYvD50ZMSbJxDn2rbnwtdQSOFbrXq5ylIQuBV5mTR1qAvlbCc4/0IxWVS5OMImVI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=abvjcbrf; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="abvjcbrf" Received: by smtp.kernel.org (Postfix) with ESMTPSA id ECE56C433C7; Sun, 24 Mar 2024 23:46:49 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324010; bh=CoV07kSb/A/ldhgRhAX040faYNYxN/IJ9SXNczYn0wc=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=abvjcbrfC3UgM81KbND2tLP/WDYDljgExCssu8S2rPzZlQ7myHfQGZUFXflcS7e4/ kHJ4s81a9eYHHD7G4UfTMX2Asv/Az7HpuBLHgbk7ujMA0kNyXARJp0BAb8QRabQN+W vUVvDNkGM9wcRJukPwIDSTrwzW1FsIhl+k/Ru7BE2qsSpYp5LqxqSA8i7TV+Fklerk XywPD2sZrlxdoM5+Z754wwjqXf6EPNEAQCzvhhLavf6H+0uT7oV5Ssq8J5okyd/pa2 0JNhcsdMzjRrOOLJ5gKuNMFCUcYw46p1xP0+W8lkn1zYONdEx33JGo/yZ6mP8cCM5m je/nyEnQs4NDw== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Greg Joyce , Jens Axboe , Sasha Levin Subject: [PATCH 5.4 011/183] block: sed-opal: handle empty atoms when parsing response Date: Sun, 24 Mar 2024 19:43:44 -0400 Message-ID: <20240324234638.1355609-12-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Greg Joyce [ Upstream commit 5429c8de56f6b2bd8f537df3a1e04e67b9c04282 ] The SED Opal response parsing function response_parse() does not handle the case of an empty atom in the response. This causes the entry count to be too high and the response fails to be parsed. Recognizing, but ignoring, empty atoms allows response handling to succeed. Signed-off-by: Greg Joyce Link: https://lore.kernel.org/r/20240216210417.3526064-2-gjoyce@linux.ibm.c= om Signed-off-by: Jens Axboe Signed-off-by: Sasha Levin --- block/opal_proto.h | 1 + block/sed-opal.c | 6 +++++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/block/opal_proto.h b/block/opal_proto.h index 5532412d567c0..354b4e93bf63e 100644 --- a/block/opal_proto.h +++ b/block/opal_proto.h @@ -65,6 +65,7 @@ enum opal_response_token { #define SHORT_ATOM_BYTE 0xBF #define MEDIUM_ATOM_BYTE 0xDF #define LONG_ATOM_BYTE 0xE3 +#define EMPTY_ATOM_BYTE 0xFF =20 #define OPAL_INVAL_PARAM 12 #define OPAL_MANUFACTURED_INACTIVE 0x08 diff --git a/block/sed-opal.c b/block/sed-opal.c index 401d33ae01580..1a08762515291 100644 --- a/block/sed-opal.c +++ b/block/sed-opal.c @@ -893,16 +893,20 @@ static int response_parse(const u8 *buf, size_t lengt= h, token_length =3D response_parse_medium(iter, pos); else if (pos[0] <=3D LONG_ATOM_BYTE) /* long atom */ token_length =3D response_parse_long(iter, pos); + else if (pos[0] =3D=3D EMPTY_ATOM_BYTE) /* empty atom */ + token_length =3D 1; else /* TOKEN */ token_length =3D response_parse_token(iter, pos); =20 if (token_length < 0) return token_length; =20 + if (pos[0] !=3D EMPTY_ATOM_BYTE) + num_entries++; + pos +=3D token_length; total -=3D token_length; iter++; - num_entries++; } =20 resp->num =3D num_entries; --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9A4B617EB8D; Sun, 24 Mar 2024 23:46:51 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324012; cv=none; b=XY+pK/ndkKvNDyNW/JwCCtshJLT1m8KGaiYngNT3+XBSgdZVioNsXFUzsBXXcFBr5wYkAc/UBJfdApjK2P3XAcYdaq5a9ZMi7UfgGllVr/vIlcoVWvJAFWVzJI9SL8cH81nWK7WMVZTDv4R3gqle93Rh+GX7KyGoYnG6fuJiqw0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324012; c=relaxed/simple; bh=SatAbAVbgGNUb0ClactKei0ZiRaKbqgiPv0efaLZVl0=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=j8NspRMtnoKQ5VIrGfE8kgf0cf+10CJuPdFbl1JWDnVnF9/zoYu/6WrPLW+MT/9OhTiR0R/oVHl33Qkk2+SQqZT8OiJBdVGGtCxCGYkSZfTp49EAUScDwiZeGZyq2ejVoQhgv6ZaVAVWh5xMrT1JQRl82lxPk6PAU5K8kE24ZV8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=EFbK7EhC; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="EFbK7EhC" Received: by smtp.kernel.org (Postfix) with ESMTPSA id D4C9AC43394; Sun, 24 Mar 2024 23:46:50 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324011; bh=SatAbAVbgGNUb0ClactKei0ZiRaKbqgiPv0efaLZVl0=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=EFbK7EhClOj79TAk1ky+OPf3dYWXt+abqS/gNfl43MATJyFgL06auENA6oUE0a/Qf v1kfUxzX9pbQIGTuWJ2VGUcrxQgWjHl4iwFzBW8TLUA1mPt6MbIz+BsYHSnq45uGVD aEto6AKcKpjx31uq1JIUST9ZzdxYXSZVrtETef1eXnWZuzHmuDQlHdV0Cx6r7bL9A5 Zo/sWsjKdu8tvaAm9b8xstdrTwqm558EQgDk3CrTqcJIc/NoJbcFt/pk0xeaL39nDj nIlaVd13Z6h/8iGqhZBDsuyx0jwZEydGXXzJdnPBa2Japzdfqte0fjf+KO1HHgiCJ7 pC80l0sjLW5VA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Mikulas Patocka , Mike Snitzer , Sasha Levin Subject: [PATCH 5.4 012/183] dm-verity, dm-crypt: align "struct bvec_iter" correctly Date: Sun, 24 Mar 2024 19:43:45 -0400 Message-ID: <20240324234638.1355609-13-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Mikulas Patocka [ Upstream commit 787f1b2800464aa277236a66eb3c279535edd460 ] "struct bvec_iter" is defined with the __packed attribute, so it is aligned on a single byte. On X86 (and on other architectures that support unaligned addresses in hardware), "struct bvec_iter" is accessed using the 8-byte and 4-byte memory instructions, however these instructions are less efficient if they operate on unaligned addresses. (on RISC machines that don't have unaligned access in hardware, GCC generates byte-by-byte accesses that are very inefficient - see [1]) This commit reorders the entries in "struct dm_verity_io" and "struct convert_context", so that "struct bvec_iter" is aligned on 8 bytes. [1] https://lore.kernel.org/all/ZcLuWUNRZadJr0tQ@fedora/T/ Signed-off-by: Mikulas Patocka Signed-off-by: Mike Snitzer Signed-off-by: Sasha Levin --- drivers/md/dm-crypt.c | 4 ++-- drivers/md/dm-verity.h | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/md/dm-crypt.c b/drivers/md/dm-crypt.c index 6b4fb4e7506f8..6866aa2aade3b 100644 --- a/drivers/md/dm-crypt.c +++ b/drivers/md/dm-crypt.c @@ -46,11 +46,11 @@ struct convert_context { struct completion restart; struct bio *bio_in; - struct bio *bio_out; struct bvec_iter iter_in; + struct bio *bio_out; struct bvec_iter iter_out; - u64 cc_sector; atomic_t cc_pending; + u64 cc_sector; union { struct skcipher_request *req; struct aead_request *req_aead; diff --git a/drivers/md/dm-verity.h b/drivers/md/dm-verity.h index 74ad36b6dbf53..fee7c7a81ce4e 100644 --- a/drivers/md/dm-verity.h +++ b/drivers/md/dm-verity.h @@ -73,11 +73,11 @@ struct dm_verity_io { /* original value of bio->bi_end_io */ bio_end_io_t *orig_bi_end_io; =20 + struct bvec_iter iter; + sector_t block; unsigned n_blocks; =20 - struct bvec_iter iter; - struct work_struct work; =20 /* --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id D2AA617EB97; Sun, 24 Mar 2024 23:46:52 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324013; cv=none; b=l9hKKOeC1yTzHDsR7yUUEr7D+rqHXmrhoBsOIElvdlduIticV8L3YKQobIq01V9JiaK2h/qTBZOI73V7VoRL9Vf/B5IVYUTVuJnCd5iYguYhuSK6ZoCNVFPxcPzlRxmc8lgUACmuTBkLF3H4z4nBX6Dql8mGi5hyLBS4008SS38= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324013; c=relaxed/simple; bh=vFZ03WCOn1wR1bZjKIw44TLC5EW/38on4bVp+puNMPs=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=EMWi4CyiP0DT++dn7jQa5vudKOAgbqExLO/ZALzCsWVhsc0Sa1ZPO4fQN1w4hy9c6uLUl1F5IFK9Lg3CJs2xCrpKyW9wf+ZzhZ4qC8HIiqLSzkTVOKE3wq93rJ8yyHtpiHj6pdCYNN2faoBHRwH1wg8RgxcEqeoL1ddgyHRMg+A= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=iW2xqLtl; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="iW2xqLtl" Received: by smtp.kernel.org (Postfix) with ESMTPSA id BD8AEC433C7; Sun, 24 Mar 2024 23:46:51 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324012; bh=vFZ03WCOn1wR1bZjKIw44TLC5EW/38on4bVp+puNMPs=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=iW2xqLtlkPAy/tNox1sPg0Cof/rnr5uVRvIAsHXPp1WZqL+eTYvoQk1mYybAmlWBr ZdVilzV6Su0B83M8Ba255a/P+qk0DxLzdW5NDSZ9PwMYyoKB1+EjX4GuJ2ifaf6pCY mCK3sodRBR4pnavBMguUz34wVc6Byok4c3i6NabtuUb2QE8aH2ubfTnsc2okXVMpiw BIS1LAe/m5pIcKo5qvDqU9Al6T73YyGF/69y3/iVnMvwPlugzP05vn4Y2cOFmOV8Rf DobDoMSwa21Jm0lCBnVKSNrUeySp/hlPRIpzrM2r1wZul/gE2aOaAZ12g9iGdddSS5 WJtNsniMw7Gug== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Filipe Manana , David Sterba , Sasha Levin Subject: [PATCH 5.4 013/183] btrfs: fix data race at btrfs_use_block_rsv() when accessing block reserve Date: Sun, 24 Mar 2024 19:43:46 -0400 Message-ID: <20240324234638.1355609-14-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Filipe Manana [ Upstream commit c7bb26b847e5b97814f522686068c5628e2b3646 ] At btrfs_use_block_rsv() we read the size of a block reserve without locking its spinlock, which makes KCSAN complain because the size of a block reserve is always updated while holding its spinlock. The report from KCSAN is the following: [653.313148] BUG: KCSAN: data-race in btrfs_update_delayed_refs_rsv [btrf= s] / btrfs_use_block_rsv [btrfs] [653.314755] read to 0x000000017f5871b8 of 8 bytes by task 7519 on cpu 0: [653.314779] btrfs_use_block_rsv+0xe4/0x2f8 [btrfs] [653.315606] btrfs_alloc_tree_block+0xdc/0x998 [btrfs] [653.316421] btrfs_force_cow_block+0x220/0xe38 [btrfs] [653.317242] btrfs_cow_block+0x1ac/0x568 [btrfs] [653.318060] btrfs_search_slot+0xda2/0x19b8 [btrfs] [653.318879] btrfs_del_csums+0x1dc/0x798 [btrfs] [653.319702] __btrfs_free_extent.isra.0+0xc24/0x2028 [btrfs] [653.320538] __btrfs_run_delayed_refs+0xd3c/0x2390 [btrfs] [653.321340] btrfs_run_delayed_refs+0xae/0x290 [btrfs] [653.322140] flush_space+0x5e4/0x718 [btrfs] [653.322958] btrfs_preempt_reclaim_metadata_space+0x102/0x2f8 [btrfs] [653.323781] process_one_work+0x3b6/0x838 [653.323800] worker_thread+0x75e/0xb10 [653.323817] kthread+0x21a/0x230 [653.323836] __ret_from_fork+0x6c/0xb8 [653.323855] ret_from_fork+0xa/0x30 [653.323887] write to 0x000000017f5871b8 of 8 bytes by task 576 on cpu 3: [653.323906] btrfs_update_delayed_refs_rsv+0x1a4/0x250 [btrfs] [653.324699] btrfs_add_delayed_data_ref+0x468/0x6d8 [btrfs] [653.325494] btrfs_free_extent+0x76/0x120 [btrfs] [653.326280] __btrfs_mod_ref+0x6a8/0x6b8 [btrfs] [653.327064] btrfs_dec_ref+0x50/0x70 [btrfs] [653.327849] walk_up_proc+0x236/0xa50 [btrfs] [653.328633] walk_up_tree+0x21c/0x448 [btrfs] [653.329418] btrfs_drop_snapshot+0x802/0x1328 [btrfs] [653.330205] btrfs_clean_one_deleted_snapshot+0x184/0x238 [btrfs] [653.330995] cleaner_kthread+0x2b0/0x2f0 [btrfs] [653.331781] kthread+0x21a/0x230 [653.331800] __ret_from_fork+0x6c/0xb8 [653.331818] ret_from_fork+0xa/0x30 So add a helper to get the size of a block reserve while holding the lock. Reading the field while holding the lock instead of using the data_race() annotation is used in order to prevent load tearing. Signed-off-by: Filipe Manana Reviewed-by: David Sterba Signed-off-by: David Sterba Signed-off-by: Sasha Levin --- fs/btrfs/block-rsv.c | 2 +- fs/btrfs/block-rsv.h | 16 ++++++++++++++++ 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/fs/btrfs/block-rsv.c b/fs/btrfs/block-rsv.c index 36ef3228bac86..63205d2f4d84c 100644 --- a/fs/btrfs/block-rsv.c +++ b/fs/btrfs/block-rsv.c @@ -392,7 +392,7 @@ struct btrfs_block_rsv *btrfs_use_block_rsv(struct btrf= s_trans_handle *trans, =20 block_rsv =3D get_block_rsv(trans, root); =20 - if (unlikely(block_rsv->size =3D=3D 0)) + if (unlikely(btrfs_block_rsv_size(block_rsv) =3D=3D 0)) goto try_reserve; again: ret =3D btrfs_block_rsv_use_bytes(block_rsv, blocksize); diff --git a/fs/btrfs/block-rsv.h b/fs/btrfs/block-rsv.h index d1428bb73fc5a..69770360917cb 100644 --- a/fs/btrfs/block-rsv.h +++ b/fs/btrfs/block-rsv.h @@ -98,4 +98,20 @@ static inline void btrfs_unuse_block_rsv(struct btrfs_fs= _info *fs_info, btrfs_block_rsv_release(fs_info, block_rsv, 0); } =20 +/* + * Get the size of a block reserve in a context where getting a stale valu= e is + * acceptable, instead of accessing it directly and trigger data race warn= ing + * from KCSAN. + */ +static inline u64 btrfs_block_rsv_size(struct btrfs_block_rsv *rsv) +{ + u64 ret; + + spin_lock(&rsv->lock); + ret =3D rsv->size; + spin_unlock(&rsv->lock); + + return ret; +} + #endif /* BTRFS_BLOCK_RSV_H */ --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 664E917EB98; Sun, 24 Mar 2024 23:46:53 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324014; cv=none; b=ZOV5URQ6pSJgqH+XHjOKDQ6CE+/mPQYpMiOzpHoduHCemts04ZdfmaM759MKZhKcXhvJPXc1oUDRhJXYqRCXEEbG/7TkkxHaTceFMGSh9YnvxS+cTpZDecY3tpIepNx0zxyhhzmyY8vyYrSIoZJrZt0mQlHZLyqWf+LedlX7gPg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324014; c=relaxed/simple; bh=LE8jwGkMU5Hm6hrhMTyPiG6zSNHB4RBSwMNNmbZ1gpw=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=pGkM5zOPyUFu6uiV/HKxITgrc2oT9TsLKFPJZVayca7y0d+fX/e49QFtvDsCJecLwwjFcOWOqCgxp/uMlOKEFjdf2Yav/cmP/Bof7zdBAxrnwO98MJRTnTME5CZxRd0vRembHmQXl0ad9OE3hhjnckD/pqt2xZ/bK3XWEfmPJTc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=uwwfoyPH; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="uwwfoyPH" Received: by smtp.kernel.org (Postfix) with ESMTPSA id A1575C433F1; Sun, 24 Mar 2024 23:46:52 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324013; bh=LE8jwGkMU5Hm6hrhMTyPiG6zSNHB4RBSwMNNmbZ1gpw=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=uwwfoyPHZm4vs8QJCizq/lNFlOy3B+A66U+x9pNNW+3XBhwnxyebR7oQbBoC0YNJE DHPpRpRleEI59QRNv9yAHI5wusj6tB6LIK6v5mMtoikpnOLZkWFsoGASmMCeHIkvQt rQ+C4tSf2N9zWahF8xETxYlzzSOJbJ4Y1u/lPNRizZskYgJDriO+pDxLP96ErGwV07 6iHV8JsvLci1or88fmscAke8J9FnsNrcLc5QeSuWFsd+sKY0M/aZK2otHFzTUe2l9L HiCO9cPbHkd89qtwWWbMZOGeJU5YrGZWTIbMHZRWCZSCEoSmhZVauT+bBm0ze6+cOn SfcXxyOc/68NQ== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Ranjan Kumar , "Martin K . Petersen" , Sasha Levin Subject: [PATCH 5.4 014/183] scsi: mpt3sas: Prevent sending diag_reset when the controller is ready Date: Sun, 24 Mar 2024 19:43:47 -0400 Message-ID: <20240324234638.1355609-15-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Ranjan Kumar [ Upstream commit ee0017c3ed8a8abfa4d40e42f908fb38c31e7515 ] If the driver detects that the controller is not ready before sending the first IOC facts command, it will wait for a maximum of 10 seconds for it to become ready. However, even if the controller becomes ready within 10 seconds, the driver will still issue a diagnostic reset. Modify the driver to avoid sending a diag reset if the controller becomes ready within the 10-second wait time. Signed-off-by: Ranjan Kumar Link: https://lore.kernel.org/r/20240221071724.14986-1-ranjan.kumar@broadco= m.com Signed-off-by: Martin K. Petersen Signed-off-by: Sasha Levin --- drivers/scsi/mpt3sas/mpt3sas_base.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/scsi/mpt3sas/mpt3sas_base.c b/drivers/scsi/mpt3sas/mpt= 3sas_base.c index e72f1dbc91f7f..04fa7337cb1ef 100644 --- a/drivers/scsi/mpt3sas/mpt3sas_base.c +++ b/drivers/scsi/mpt3sas/mpt3sas_base.c @@ -6040,7 +6040,9 @@ _base_wait_for_iocstate(struct MPT3SAS_ADAPTER *ioc, = int timeout) return -EFAULT; } =20 - issue_diag_reset: + return 0; + +issue_diag_reset: rc =3D _base_diag_reset(ioc); return rc; } --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9266B17EB9A; Sun, 24 Mar 2024 23:46:54 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324014; cv=none; b=j0BZ9FdOBbIyuqO7fttnci2yUgc2e+N2unx7KZI0OymQ6qApiQxuLSjAUtZoLpQ4MrfmYy2OV/ohPFJOTmU1jyqXrBgi3UwctI7wtvFVJGpBdebS2RHL+/Nsf5wpaI73RXrYNEn+a56F9Iby+SALCt1tlI9zdxKMvX47h85jBX8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324014; c=relaxed/simple; bh=OJoDDSsYjtltlAlhmkFANMN+uZeJZlwsYuKJ5H4O1y8=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=JhTvtU0ts90ftjQNU9utGhVFUAtZcA/C5GbPJKai3xF39Ao3ZMecgI5kWEmypKcFP64aQp4WMGiCdlGZ2WD111whP2EFUibxlpsIoJjGahh6LJldSDEm7oQhSj7rUlaoLmGvAwy7n0d/S8x3JSc+YY2kjrk1JyYmtm9RXEdlxlU= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=Ab81gu64; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="Ab81gu64" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 8832FC43399; Sun, 24 Mar 2024 23:46:53 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324014; bh=OJoDDSsYjtltlAlhmkFANMN+uZeJZlwsYuKJ5H4O1y8=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Ab81gu64hhCY/1ldfueNp9q8tHJRf3M5y0pOE/XINstllmoQRKPTEIk76C27nnPq9 dZ1PLTqBJixWnlhE37sJJnprizRHV5xUNeOtzKEraryRRtMqZ2R1D4SIVsh5cGKclc qI6PoUBNrdHoMOwZL2NYvoPkVj2zVgFnQkIxNa4l6d/agBAzsRlS9pqJY6nX799aSc 3uYUj+z2131mr81Y0OvZPSn185pwzGd33Vhzzlno3kj8DaqKrkvsT6gcKVzH9WsJzd gNlcUQsW6xQB8DIi7P+xRErbZKHD6wuM4C5+EhG2ybJHS7PeYRr5xxWbqEBHWgojeY Q0W6T3SDoi6Hw== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Yuxuan Hu <20373622@buaa.edu.cn>, Luiz Augusto von Dentz , Sasha Levin Subject: [PATCH 5.4 015/183] Bluetooth: rfcomm: Fix null-ptr-deref in rfcomm_check_security Date: Sun, 24 Mar 2024 19:43:48 -0400 Message-ID: <20240324234638.1355609-16-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Yuxuan Hu <20373622@buaa.edu.cn> [ Upstream commit 2535b848fa0f42ddff3e5255cf5e742c9b77bb26 ] During our fuzz testing of the connection and disconnection process at the RFCOMM layer, we discovered this bug. By comparing the packets from a normal connection and disconnection process with the testcase that triggered a KASAN report. We analyzed the cause of this bug as follows: 1. In the packets captured during a normal connection, the host sends a `Read Encryption Key Size` type of `HCI_CMD` packet (Command Opcode: 0x1408) to the controller to inquire the length of encryption key.After receiving this packet, the controller immediately replies with a Command Completepacket (Event Code: 0x0e) to return the Encryption Key Size. 2. In our fuzz test case, the timing of the controller's response to this packet was delayed to an unexpected point: after the RFCOMM and L2CAP layers had disconnected but before the HCI layer had disconnected. 3. After receiving the Encryption Key Size Response at the time described in point 2, the host still called the rfcomm_check_security function. However, by this time `struct l2cap_conn *conn =3D l2cap_pi(sk)->chan->conn= ;` had already been released, and when the function executed `return hci_conn_security(conn->hcon, d->sec_level, auth_type, d->out);`, specifically when accessing `conn->hcon`, a null-ptr-deref error occurred. To fix this bug, check if `sk->sk_state` is BT_CLOSED before calling rfcomm_recv_frame in rfcomm_process_rx. Signed-off-by: Yuxuan Hu <20373622@buaa.edu.cn> Signed-off-by: Luiz Augusto von Dentz Signed-off-by: Sasha Levin --- net/bluetooth/rfcomm/core.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/bluetooth/rfcomm/core.c b/net/bluetooth/rfcomm/core.c index 2db9e285215c5..596fa3172642b 100644 --- a/net/bluetooth/rfcomm/core.c +++ b/net/bluetooth/rfcomm/core.c @@ -1940,7 +1940,7 @@ static struct rfcomm_session *rfcomm_process_rx(struc= t rfcomm_session *s) /* Get data directly from socket receive queue without copying it. */ while ((skb =3D skb_dequeue(&sk->sk_receive_queue))) { skb_orphan(skb); - if (!skb_linearize(skb)) { + if (!skb_linearize(skb) && sk->sk_state !=3D BT_CLOSED) { s =3D rfcomm_recv_frame(s, skb); if (!s) break; --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 7DF4417F36D; Sun, 24 Mar 2024 23:46:55 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324016; cv=none; b=Zb/o47Vvs7mOT+au8Bh4FDDuONVXjnlFbAPjbpqBC8Qy1hjtJgtuxEdEdA6s4wx4i+pv1+s/dV9Zq/diUKm8MYI3oywa0DF2P3NuRHdEm4KRFL93J6bf2MMxFNxjnCJrl8MtrHol3OKVdtidI8rUrgTi9REdhY7VDcQfjhhFQ2s= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324016; c=relaxed/simple; bh=gAqdm49DZG7gHX8FLf99AYsnKM/Po+UYbJY+eyoQle0=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=qcH2BOPBE2R/CkQ0hPKlRV960ALTOe7E/16Qw2t2ivf/XsgOnk3vK8kxgjITaQaAN1o1d/P+G1KCx3hG3QRMIb6ZqL9JjM8uDd2Q26JtNygrxDRzU1jiv6h1Wf6ZOD6Z2YO/1xORlns5P6vphJcxDWc+QBAxV3v17FKKjJE/4fs= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=sP/tVTif; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="sP/tVTif" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 72DA5C43394; Sun, 24 Mar 2024 23:46:54 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324015; bh=gAqdm49DZG7gHX8FLf99AYsnKM/Po+UYbJY+eyoQle0=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=sP/tVTif7ObvCcHI4khAjIq5OCiPx16MLjKYc2UsNdMmngdHtq9YV4R/Z/HyBe7VQ Z/hAVlDG23HyVxGrX31zqT5yIIiRrNTkhYP0kUEx/XxKKBz/S9ucfkwtrMZZCJ8yHW oljgHDNIJv8kSSYzQ5v9KW412IZdA+zZNP9Q1QeGb+YlEgy5k0P+QYBf1D8ks6cYMV aZYaWbdehOUgI2RA7wXhIeIVFGw5wjYcEmczOZ0U1Hsr7uHSqvS2n7ySWBV5rEgG9B WZENJASLDtCQ48qKQnwWZ3bRt8sP7v7ARhf3uRonEY2563ybFEKcmnQE+r4oEcCL7w X2vrwL8vMKpew== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Takashi Sakamoto , Adam Goldman , Sasha Levin Subject: [PATCH 5.4 016/183] firewire: core: use long bus reset on gap count error Date: Sun, 24 Mar 2024 19:43:49 -0400 Message-ID: <20240324234638.1355609-17-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Takashi Sakamoto [ Upstream commit d0b06dc48fb15902d7da09c5c0861e7f042a9381 ] When resetting the bus after a gap count error, use a long rather than short bus reset. IEEE 1394-1995 uses only long bus resets. IEEE 1394a adds the option of short bus resets. When video or audio transmission is in progress and a device is hot-plugged elsewhere on the bus, the resulting bus reset can cause video frame drops or audio dropouts. Short bus resets reduce or eliminate this problem. Accordingly, short bus resets are almost always preferred. However, on a mixed 1394/1394a bus, a short bus reset can trigger an immediate additional bus reset. This double bus reset can be interpreted differently by different nodes on the bus, resulting in an inconsistent gap count after the bus reset. An inconsistent gap count will cause another bus reset, leading to a neverending bus reset loop. This only happens for some bus topologies, not for all mixed 1394/1394a buses. By instead sending a long bus reset after a gap count inconsistency, we avoid the doubled bus reset, restoring the bus to normal operation. Signed-off-by: Adam Goldman Link: https://sourceforge.net/p/linux1394/mailman/message/58741624/ Signed-off-by: Takashi Sakamoto Signed-off-by: Sasha Levin --- drivers/firewire/core-card.c | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/drivers/firewire/core-card.c b/drivers/firewire/core-card.c index be195ba834632..d446a72629414 100644 --- a/drivers/firewire/core-card.c +++ b/drivers/firewire/core-card.c @@ -500,7 +500,19 @@ static void bm_work(struct work_struct *work) fw_notice(card, "phy config: new root=3D%x, gap_count=3D%d\n", new_root_id, gap_count); fw_send_phy_config(card, new_root_id, generation, gap_count); - reset_bus(card, true); + /* + * Where possible, use a short bus reset to minimize + * disruption to isochronous transfers. But in the event + * of a gap count inconsistency, use a long bus reset. + * + * As noted in 1394a 8.4.6.2, nodes on a mixed 1394/1394a bus + * may set different gap counts after a bus reset. On a mixed + * 1394/1394a bus, a short bus reset can get doubled. Some + * nodes may treat the double reset as one bus reset and others + * may treat it as two, causing a gap count inconsistency + * again. Using a long bus reset prevents this. + */ + reset_bus(card, card->gap_count !=3D 0); /* Will allocate broadcast channel after the reset. */ goto out; } --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9199C17F36C; Sun, 24 Mar 2024 23:46:56 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324016; cv=none; b=gqpGCUHbXnywUi1s/r9grHl4JhfInwWo5yF88WJdnOeGJW9BzCCKHGOXpAYvAbKa7wotZjvDirpJeJPi9uMRuUUOo4LX4e4sAB4bOqUOQ9zv5mxawtWrcZX6GVnhq9JHT0y3Cg8yJBNqkfeWy5XyxFO5qtzdfStEtUjxZoc/npY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324016; c=relaxed/simple; bh=sL2RKPUz7dDRVOIkRhMDv4+bFxzDPiGYLyueB87xlFU=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=XRY79Q44h8IpSO90Ekeuk+SxziVHyNcYdAGkdmLs0KNGwFicduVmS2VJDgr+gvB5LjcEswEooxyV8iIoLfhJphCdqCce8q7PuwHva1gLfLlFJun8mRKNY98to/SA+WWxeFsBa7/lWgZrd0IpaeF23KLhUN/j/qHUGoR9z0Il8Fo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=DXs0iXqF; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="DXs0iXqF" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 5C969C43390; Sun, 24 Mar 2024 23:46:55 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324016; bh=sL2RKPUz7dDRVOIkRhMDv4+bFxzDPiGYLyueB87xlFU=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=DXs0iXqFi8tP5+oRDAp2qNZ3ASqmtg3bMaXAmiztaKTKwEqErtvmTVLJU0DC75ZAF LHZoa/LbLoa2HQxQ+aH++o6wVkZlE3u1qaPiyDDJ4gPEJt+3IB3dA+02Q3LkbCaI3r eNEru+ig9Bb9U4kyKpa8v2+0lDKRAb2up0aOpESbnaVNOhnpPSQ2WMYGUoFWwAVtti z1DZ8pIgeCB8rvb2rZ4m/65byflcyYhTVFXlroFoptqagpRTBWig3KnWYZ5+dcY18C LeM2zdBTwhTUpS5EOT2XdsbBBYoq5kuu50aW1Kn5SbLNt9gYYwkz4kBXOTRGrfOCl7 PniqRJMZWNOhg== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: =?UTF-8?q?Alban=20Boy=C3=A9?= , Cezary Rojewski , Pierre-Louis Bossart , Mark Brown , Sasha Levin Subject: [PATCH 5.4 017/183] ASoC: Intel: bytcr_rt5640: Add an extra entry for the Chuwi Vi8 tablet Date: Sun, 24 Mar 2024 19:43:50 -0400 Message-ID: <20240324234638.1355609-18-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable From: Alban Boy=C3=A9 [ Upstream commit f8b0127aca8c60826e7354e504a12d4a46b1c3bb ] The bios version can differ depending if it is a dual-boot variant of the t= ablet. Therefore another DMI match is required. Signed-off-by: Alban Boy=C3=A9 Reviewed-by: Cezary Rojewski Acked-by: Pierre-Louis Bossart Link: https://msgid.link/r/20240228192807.15130-1-alban.boye@protonmail.com Signed-off-by: Mark Brown Signed-off-by: Sasha Levin --- sound/soc/intel/boards/bytcr_rt5640.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/sound/soc/intel/boards/bytcr_rt5640.c b/sound/soc/intel/boards= /bytcr_rt5640.c index df3b370fe7292..c740dec00f83b 100644 --- a/sound/soc/intel/boards/bytcr_rt5640.c +++ b/sound/soc/intel/boards/bytcr_rt5640.c @@ -526,6 +526,18 @@ static const struct dmi_system_id byt_rt5640_quirk_tab= le[] =3D { BYT_RT5640_SSP0_AIF1 | BYT_RT5640_MCLK_EN), }, + { /* Chuwi Vi8 dual-boot (CWI506) */ + .matches =3D { + DMI_EXACT_MATCH(DMI_SYS_VENDOR, "Insyde"), + DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "i86"), + /* The above are too generic, also match BIOS info */ + DMI_MATCH(DMI_BIOS_VERSION, "CHUWI2.D86JHBNR02"), + }, + .driver_data =3D (void *)(BYTCR_INPUT_DEFAULTS | + BYT_RT5640_MONO_SPEAKER | + BYT_RT5640_SSP0_AIF1 | + BYT_RT5640_MCLK_EN), + }, { /* Chuwi Vi10 (CWI505) */ .matches =3D { --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 8D96D17F363; Sun, 24 Mar 2024 23:46:57 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324018; cv=none; b=gYSSu4kKcqJByYCLi2UGPZjJa/+WiEUL5+RsbqRNr2E61FHuFfx0hb0kw1s0QWh2jPCdM2pzRJIBPjSpfpcMQs4FQryYjw5uWD7Nkl/earBUmRFVeKupRVLiOdHTa+3fLxEaa1AlZ9UDg2kUNQ0+8lv7OwWpkl/KBIvOWW8Vxfc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324018; c=relaxed/simple; bh=Nolwht7xB4k8AtWq7yscABEu12du6hQAJPByB7bvTj8=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=XuoVOorJAK7GZruZUb7w9zrtnq3hlWcegFLbF0Xj4B6h6rxOlKGhTJkNdSO8URGDh8Fxe+r3sEjkfiOdrFJEpanzRjcqpD0iUDmJHP/iROGww25D8/bbPlcEXnzUrPDQBFmp6BaLkVjXECg/cPO0lJ8EOmPxr39kM9f6Llcra14= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=MEEpIa8l; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="MEEpIa8l" Received: by smtp.kernel.org (Postfix) with ESMTPSA id B51CAC433A6; Sun, 24 Mar 2024 23:46:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324017; bh=Nolwht7xB4k8AtWq7yscABEu12du6hQAJPByB7bvTj8=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=MEEpIa8lm85S8G/CFah1+DWGjoWdn409/lPbDDGrsr1EiGNDJH/1LAIXkaK0oC898 pkK23NTRcG+b9YCmbLeKAWiEJyhbgdiRkWoL/rqtZQkrTFQh1K4zc/Tt2JcRwB+QrN mqIB4vCnWojSSQ5aS5S1S1Hlrvk+ZOkJW6cjmBRgI4aFjFjOIDTYI5coI0IBg79fy4 b19trSx6Atb9lCYm/0llUFcPhwJ9K/Kujj5yMdBlbyMj6mN54QeE0PG/9b29k6pdF4 eyB9tvr3OUaZ2u/jBsv+rOWZeHT03OT0RsDQK7SK7a6s/K32fnR/KOiEflcOv7rGOh TRav4eTCKI+2Q== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= , Linus Walleij , Dmitry Torokhov , Sasha Levin Subject: [PATCH 5.4 018/183] Input: gpio_keys_polled - suppress deferred probe error for gpio Date: Sun, 24 Mar 2024 19:43:51 -0400 Message-ID: <20240324234638.1355609-19-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable From: Uwe Kleine-K=C3=B6nig [ Upstream commit 963465a33141d0d52338e77f80fe543d2c9dc053 ] On a PC Engines APU our admins are faced with: $ dmesg | grep -c "gpio-keys-polled gpio-keys-polled: unable to claim gpio= 0, err=3D-517" 261 Such a message always appears when e.g. a new USB device is plugged in. Suppress this message which considerably clutters the kernel log for EPROBE_DEFER (i.e. -517). Signed-off-by: Uwe Kleine-K=C3=B6nig Reviewed-by: Linus Walleij Link: https://lore.kernel.org/r/20240305101042.10953-2-u.kleine-koenig@peng= utronix.de Signed-off-by: Dmitry Torokhov Signed-off-by: Sasha Levin --- drivers/input/keyboard/gpio_keys_polled.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/drivers/input/keyboard/gpio_keys_polled.c b/drivers/input/keyb= oard/gpio_keys_polled.c index 465eecfa6b3f0..825fff00e4f88 100644 --- a/drivers/input/keyboard/gpio_keys_polled.c +++ b/drivers/input/keyboard/gpio_keys_polled.c @@ -325,12 +325,10 @@ static int gpio_keys_polled_probe(struct platform_dev= ice *pdev) =20 error =3D devm_gpio_request_one(dev, button->gpio, flags, button->desc ? : DRV_NAME); - if (error) { - dev_err(dev, - "unable to claim gpio %u, err=3D%d\n", - button->gpio, error); - return error; - } + if (error) + return dev_err_probe(dev, error, + "unable to claim gpio %u\n", + button->gpio); =20 bdata->gpiod =3D gpio_to_desc(button->gpio); if (!bdata->gpiod) { --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id BE3CC17F37C; Sun, 24 Mar 2024 23:46:58 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324018; cv=none; b=o6sYzTY0ClaFcy94zbKidXHZ18j8OI0HYtmnlWq+0ZY7+d7e/8zIkKAxIoQS/lB5A9SXEN3tqt02JB2b3g8qMIJrNqFvyNaGzugnPDhs94JefPBTgZ2WEsLvhY/hSxuNyUyyI5AKv1BMpaqp2XfpHtEH0jIIEk+xPeQzRl/XBc4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324018; c=relaxed/simple; bh=Omoo0aUsEXS6COkhR0n4ABgkiK51ZXRtWGZSWByn3pc=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=r4giCcINho+F+KsuqOC2h/xhSb248iot7x01p/WKJALxohxvDogAZmam4kxd5rKOxe0X1PE6oiapWUCF9xL8M54DAwf2BkaET+q1nq8+y8x8e9nm+SvYv0+2uzGnr3rfY5Czz0+mfdjo/TSPaGiJGXc9RKx1VDyS/MPkeHtWXrI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=oene+j7L; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="oene+j7L" Received: by smtp.kernel.org (Postfix) with ESMTPSA id ADD6EC43390; Sun, 24 Mar 2024 23:46:57 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324018; bh=Omoo0aUsEXS6COkhR0n4ABgkiK51ZXRtWGZSWByn3pc=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=oene+j7Lta5JLNJfd7QLXgL6ssa0lnFzcycWq0HiKtN6le5XOhoqjjxeb0aqet5rc qsWlZHiKSzrWjFt1S6/1SjO1wyDOSQBQ+dUt/GPyz9OEn4LI+ulDcfsdvLeTbV+jC3 WxbUcQ+/CIm/h5qkVZLY8MYXa78JuJsl6S8/R22vSsJflk1mP+BV1KTtIM+WHPRPMV vqmYsokSOtk8bETk5rsaSs4V/DHC2mxnth/611EP0aDSNm6N9AULOTc8+vnFHWG0T2 ScD5FWy9T0XVZOD65TJg/N5jjFfzekjLSu4qiQQgZWC3LVDPlouFHnPq9FZuO8S2QK e4w3iv7RoGqSw== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Stuart Henderson , Mark Brown , Sasha Levin Subject: [PATCH 5.4 019/183] ASoC: wm8962: Enable oscillator if selecting WM8962_FLL_OSC Date: Sun, 24 Mar 2024 19:43:52 -0400 Message-ID: <20240324234638.1355609-20-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Stuart Henderson [ Upstream commit 03c7874106ca5032a312626b927b1c35f07b1f35 ] Signed-off-by: Stuart Henderson Link: https://msgid.link/r/20240306161439.1385643-1-stuarth@opensource.cirr= us.com Signed-off-by: Mark Brown Signed-off-by: Sasha Levin --- sound/soc/codecs/wm8962.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/sound/soc/codecs/wm8962.c b/sound/soc/codecs/wm8962.c index c384ca3681e9b..c84afc1d02dab 100644 --- a/sound/soc/codecs/wm8962.c +++ b/sound/soc/codecs/wm8962.c @@ -2889,8 +2889,12 @@ static int wm8962_set_fll(struct snd_soc_component *= component, int fll_id, int s switch (fll_id) { case WM8962_FLL_MCLK: case WM8962_FLL_BCLK: + fll1 |=3D (fll_id - 1) << WM8962_FLL_REFCLK_SRC_SHIFT; + break; case WM8962_FLL_OSC: fll1 |=3D (fll_id - 1) << WM8962_FLL_REFCLK_SRC_SHIFT; + snd_soc_component_update_bits(component, WM8962_PLL2, + WM8962_OSC_ENA, WM8962_OSC_ENA); break; case WM8962_FLL_INT: snd_soc_component_update_bits(component, WM8962_FLL_CONTROL_1, --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 57DE717F38C; Sun, 24 Mar 2024 23:46:59 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324020; cv=none; b=ZHapSUPiGcNNtTcUKiCnF5Kst6VuyxUpmxKgW+31sZDiiS3JGuUUzcuHtwkk5DON0+wJpavxWBbKzctue+17DUCkCadbt9C6bFmlhLT/gmqkFmYZufIHQgY3+3lQHa1cSzpzMexvLrjvPfiKD3O9viFx+XPW+ba0QFZwhlo7mTQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324020; c=relaxed/simple; bh=9sSDmvXQHGR0M8poLQXFPWiWAjJ+z04RpjNhHuw8szU=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=FE58O0vWbZbEJOsUy7b2AOKnIjujcRuZ87iHWLP53vy7kbpmuQFKuJv9idqihh6dg8+tmCqeEwlBGwIPQhBA+9UT0U+NjiDlAEwuHax6Skvgz6xYMog/J6HUXQCoNyTAB5h96KX2ESM605OU3nka/rXyq0KR2bcaNrQkqnKHMtg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=KwoGO5rs; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="KwoGO5rs" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 94039C433C7; Sun, 24 Mar 2024 23:46:58 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324019; bh=9sSDmvXQHGR0M8poLQXFPWiWAjJ+z04RpjNhHuw8szU=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=KwoGO5rskItwL7fjCoRqQTTcpgDpiU3NlUBc31MqbGbXufjv1U54J+LNc3DZUvU0v PBx1DODzAXluJFCr225tdSiYKqAcp70WWpsLyxfNOm7f0bzHDi5t/4D5ifQCGHxw6x 1bLq+a1J7tu+ETL5wnuxirwCw0tuQ2cR4PKLXMEopnkEXQXq/NxazaJPw/ZGGTGv7o G+yYNtGAopvrP9raBDguy3GBV3HloiyRZo0YDHvRxuDurVkt9RbYNYMgACFef7a7pW 53YdGv7Iiw0WNzoHg1/KjqaH8bozk0Qvlsbjf1lERpnkR72PUJT2jWJFFd81Uo78CO lU3ru9rijEoXQ== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Stuart Henderson , Mark Brown , Sasha Levin Subject: [PATCH 5.4 020/183] ASoC: wm8962: Enable both SPKOUTR_ENA and SPKOUTL_ENA in mono mode Date: Sun, 24 Mar 2024 19:43:53 -0400 Message-ID: <20240324234638.1355609-21-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Stuart Henderson [ Upstream commit 6fa849e4d78b880e878138bf238e4fd2bac3c4fa ] Signed-off-by: Stuart Henderson Link: https://msgid.link/r/20240306161439.1385643-2-stuarth@opensource.cirr= us.com Signed-off-by: Mark Brown Signed-off-by: Sasha Levin --- sound/soc/codecs/wm8962.c | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/sound/soc/codecs/wm8962.c b/sound/soc/codecs/wm8962.c index c84afc1d02dab..9ccec511352a0 100644 --- a/sound/soc/codecs/wm8962.c +++ b/sound/soc/codecs/wm8962.c @@ -2218,6 +2218,9 @@ SND_SOC_DAPM_PGA_E("HPOUT", SND_SOC_NOPM, 0, 0, NULL,= 0, hp_event, =20 SND_SOC_DAPM_OUTPUT("HPOUTL"), SND_SOC_DAPM_OUTPUT("HPOUTR"), + +SND_SOC_DAPM_PGA("SPKOUTL Output", WM8962_CLASS_D_CONTROL_1, 6, 0, NULL, 0= ), +SND_SOC_DAPM_PGA("SPKOUTR Output", WM8962_CLASS_D_CONTROL_1, 7, 0, NULL, 0= ), }; =20 static const struct snd_soc_dapm_widget wm8962_dapm_spk_mono_widgets[] =3D= { @@ -2225,7 +2228,6 @@ SND_SOC_DAPM_MIXER("Speaker Mixer", WM8962_MIXER_ENAB= LES, 1, 0, spkmixl, ARRAY_SIZE(spkmixl)), SND_SOC_DAPM_MUX_E("Speaker PGA", WM8962_PWR_MGMT_2, 4, 0, &spkoutl_mux, out_pga_event, SND_SOC_DAPM_POST_PMU), -SND_SOC_DAPM_PGA("Speaker Output", WM8962_CLASS_D_CONTROL_1, 7, 0, NULL, 0= ), SND_SOC_DAPM_OUTPUT("SPKOUT"), }; =20 @@ -2240,9 +2242,6 @@ SND_SOC_DAPM_MUX_E("SPKOUTL PGA", WM8962_PWR_MGMT_2, = 4, 0, &spkoutl_mux, SND_SOC_DAPM_MUX_E("SPKOUTR PGA", WM8962_PWR_MGMT_2, 3, 0, &spkoutr_mux, out_pga_event, SND_SOC_DAPM_POST_PMU), =20 -SND_SOC_DAPM_PGA("SPKOUTR Output", WM8962_CLASS_D_CONTROL_1, 7, 0, NULL, 0= ), -SND_SOC_DAPM_PGA("SPKOUTL Output", WM8962_CLASS_D_CONTROL_1, 6, 0, NULL, 0= ), - SND_SOC_DAPM_OUTPUT("SPKOUTL"), SND_SOC_DAPM_OUTPUT("SPKOUTR"), }; @@ -2352,12 +2351,18 @@ static const struct snd_soc_dapm_route wm8962_spk_m= ono_intercon[] =3D { { "Speaker PGA", "Mixer", "Speaker Mixer" }, { "Speaker PGA", "DAC", "DACL" }, =20 - { "Speaker Output", NULL, "Speaker PGA" }, - { "Speaker Output", NULL, "SYSCLK" }, - { "Speaker Output", NULL, "TOCLK" }, - { "Speaker Output", NULL, "TEMP_SPK" }, + { "SPKOUTL Output", NULL, "Speaker PGA" }, + { "SPKOUTL Output", NULL, "SYSCLK" }, + { "SPKOUTL Output", NULL, "TOCLK" }, + { "SPKOUTL Output", NULL, "TEMP_SPK" }, + + { "SPKOUTR Output", NULL, "Speaker PGA" }, + { "SPKOUTR Output", NULL, "SYSCLK" }, + { "SPKOUTR Output", NULL, "TOCLK" }, + { "SPKOUTR Output", NULL, "TEMP_SPK" }, =20 - { "SPKOUT", NULL, "Speaker Output" }, + { "SPKOUT", NULL, "SPKOUTL Output" }, + { "SPKOUT", NULL, "SPKOUTR Output" }, }; =20 static const struct snd_soc_dapm_route wm8962_spk_stereo_intercon[] =3D { --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 4169517F393; Sun, 24 Mar 2024 23:47:00 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324021; cv=none; b=ufIsygVek+viVR9at5KqRkszSXSlPZTQkNj7fNfHPgmwWcgR8eE0bRFHfht8mA6ocLw6cka8cq+KrUDsfdFWdy3OopAjbFTKEozVkRR890hqldU5CKIdMGGW3g2gtl9A9DGsTDjm5KXbN92y3I/OyWbiMnwexnEin1lWbGN/BIs= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324021; c=relaxed/simple; bh=mmN/SZR6PmFIvbIsDtMtfVjVtr8+wCKe8berH2El920=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=gpMheJ7sG0eQ+GxKjA8ZYfSBPPVsWTHO1NKrW7kswk1PJQArpjArce7RX1mKq4BPJaK8doHfpSSzabt+gSlLFQ0D8GZe0di9Ii2G0rDi1SX8i9EdI32qMiqySJRQRW3wLR1BJgJZiPgI5enBGtfR5wYeMRtnho+6otJFYpS8Dp0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=mdBl9UmA; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="mdBl9UmA" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 79907C433F1; Sun, 24 Mar 2024 23:46:59 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324020; bh=mmN/SZR6PmFIvbIsDtMtfVjVtr8+wCKe8berH2El920=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=mdBl9UmAEGHVa5iTO0ggtJ6ztgYcxVFoZ9mrKltaMiBAdUXrv0yCVaaDS2iMrlI/o K2etTUy/enOle0vKON/ZZYWJv5kBFs5/fHAnEs6WFaTpPGjV8rZc8mDGrwrxF4fVsu dcx47vfNZQxqePHCY/hpgUFXaSETB67OC+3aNX0nJVC3L9a4kCdnG35W0Zjc3dnLzX bocstqcPFQ37iT6/g2g6X+6NDGG2IEHb3hlfGxw1rDcjrtDsCEWg8S1OzXAGOKgcFK TSwp22PBDMhSa1klr6G3kT7bpmWsLDG72VWwWBtSXz0vF4Xl+V/LovkkJuHZnDlQA0 f89PR8msGzmuQ== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Stuart Henderson , Mark Brown , Sasha Levin Subject: [PATCH 5.4 021/183] ASoC: wm8962: Fix up incorrect error message in wm8962_set_fll Date: Sun, 24 Mar 2024 19:43:54 -0400 Message-ID: <20240324234638.1355609-22-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Stuart Henderson [ Upstream commit 96e202f8c52ac49452f83317cf3b34cd1ad81e18 ] Use source instead of ret, which seems to be unrelated and will always be zero. Signed-off-by: Stuart Henderson Link: https://msgid.link/r/20240306161439.1385643-5-stuarth@opensource.cirr= us.com Signed-off-by: Mark Brown Signed-off-by: Sasha Levin --- sound/soc/codecs/wm8962.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sound/soc/codecs/wm8962.c b/sound/soc/codecs/wm8962.c index 9ccec511352a0..15828ae62f9de 100644 --- a/sound/soc/codecs/wm8962.c +++ b/sound/soc/codecs/wm8962.c @@ -2908,7 +2908,7 @@ static int wm8962_set_fll(struct snd_soc_component *c= omponent, int fll_id, int s WM8962_FLL_FRC_NCO, WM8962_FLL_FRC_NCO); break; default: - dev_err(component->dev, "Unknown FLL source %d\n", ret); + dev_err(component->dev, "Unknown FLL source %d\n", source); return -EINVAL; } =20 --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B521D1802A1; Sun, 24 Mar 2024 23:47:01 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324022; cv=none; b=XJvQvH+CeUrXEnmdMoMArxXBHnE9FUq5oLbGCp+1brAuKtwYPbiERCo/9krlZ1yGHQmqo2EfwEWkmj+GpJqAoK4KalWr8CmmDtRU2pOaLy6zqcwMnx9iZPqZelb0qp8xG79XsQbQpP2dKjDR9ouvWJuJPkpQ3liN4DlHyI7P6GM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324022; c=relaxed/simple; bh=LTi1uiWusNYqglrFjirvmacGHwvj6xPN7iV4nR1ZLyI=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=aAZKiMI0xFJKXyiS+w3D1/jfCc+1WFBa9BCK4tLxvWYJwcz/JpUXSorTH4YYotd26p1ioRZXVmO1wemmlBDfLp3lsk6vWPSrV+/hFaJJtws6xOwAFKvVhnDbmMpeyheEzMuI2y+TsJ5tvloJiym7M5BgrKI9tCmImr+/cwwLtIo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=hJBhxVq4; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="hJBhxVq4" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 6D8ACC43390; Sun, 24 Mar 2024 23:47:00 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324021; bh=LTi1uiWusNYqglrFjirvmacGHwvj6xPN7iV4nR1ZLyI=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=hJBhxVq4bc8bMw8QZSx/tVwA+1c17Cvdg37C+QlCfkvHmVp2FJg4R02nObmuAqDlL yDy+S6Hn/GRlZbl8/3xiMGoZvgxO2mHgLyoG5s1SftwkCYuiHsgBMqtHXalOpe+WEK ODoIuoYr0Q50um+Lf3pAlBUT0YGpPG+j6KRXiZA98RWcGIdtY++Gzp3Kis3vCxk0UL 7G1eI8vcx6bfeIN2s4idTORzvCzZECYDITC0eFPzSPMjKY+LuSK6wIZ3jtCrs5Fd5C hn+B184EdY0xK9dHiZUzuWjPRLL6b75lLFJ38Ed+V/K6+yixjXTHtxt+KzuK1ZAMOY YzrFRKkR1T6DQ== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Nikita Zhandarovich , Chuck Lever III , syzbot+09b349b3066c2e0b1e96@syzkaller.appspotmail.com, Jan Kara , Christian Brauner , Sasha Levin Subject: [PATCH 5.4 022/183] do_sys_name_to_handle(): use kzalloc() to fix kernel-infoleak Date: Sun, 24 Mar 2024 19:43:55 -0400 Message-ID: <20240324234638.1355609-23-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Nikita Zhandarovich [ Upstream commit 3948abaa4e2be938ccdfc289385a27342fb13d43 ] syzbot identified a kernel information leak vulnerability in do_sys_name_to_handle() and issued the following report [1]. [1] "BUG: KMSAN: kernel-infoleak in instrument_copy_to_user include/linux/instr= umented.h:114 [inline] BUG: KMSAN: kernel-infoleak in _copy_to_user+0xbc/0x100 lib/usercopy.c:40 instrument_copy_to_user include/linux/instrumented.h:114 [inline] _copy_to_user+0xbc/0x100 lib/usercopy.c:40 copy_to_user include/linux/uaccess.h:191 [inline] do_sys_name_to_handle fs/fhandle.c:73 [inline] __do_sys_name_to_handle_at fs/fhandle.c:112 [inline] __se_sys_name_to_handle_at+0x949/0xb10 fs/fhandle.c:94 __x64_sys_name_to_handle_at+0xe4/0x140 fs/fhandle.c:94 ... Uninit was created at: slab_post_alloc_hook+0x129/0xa70 mm/slab.h:768 slab_alloc_node mm/slub.c:3478 [inline] __kmem_cache_alloc_node+0x5c9/0x970 mm/slub.c:3517 __do_kmalloc_node mm/slab_common.c:1006 [inline] __kmalloc+0x121/0x3c0 mm/slab_common.c:1020 kmalloc include/linux/slab.h:604 [inline] do_sys_name_to_handle fs/fhandle.c:39 [inline] __do_sys_name_to_handle_at fs/fhandle.c:112 [inline] __se_sys_name_to_handle_at+0x441/0xb10 fs/fhandle.c:94 __x64_sys_name_to_handle_at+0xe4/0x140 fs/fhandle.c:94 ... Bytes 18-19 of 20 are uninitialized Memory access of size 20 starts at ffff888128a46380 Data copied to user address 0000000020000240" Per Chuck Lever's suggestion, use kzalloc() instead of kmalloc() to solve the problem. Fixes: 990d6c2d7aee ("vfs: Add name to file handle conversion support") Suggested-by: Chuck Lever III Reported-and-tested-by: Signed-off-by: Nikita Zhandarovich Link: https://lore.kernel.org/r/20240119153906.4367-1-n.zhandarovich@fintec= h.ru Reviewed-by: Jan Kara Signed-off-by: Christian Brauner Signed-off-by: Sasha Levin --- fs/fhandle.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fs/fhandle.c b/fs/fhandle.c index 01263ffbc4c08..9a5f153c8919e 100644 --- a/fs/fhandle.c +++ b/fs/fhandle.c @@ -37,7 +37,7 @@ static long do_sys_name_to_handle(struct path *path, if (f_handle.handle_bytes > MAX_HANDLE_SZ) return -EINVAL; =20 - handle =3D kmalloc(sizeof(struct file_handle) + f_handle.handle_bytes, + handle =3D kzalloc(sizeof(struct file_handle) + f_handle.handle_bytes, GFP_KERNEL); if (!handle) return -ENOMEM; --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 8C9B31802AA; Sun, 24 Mar 2024 23:47:02 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324023; cv=none; b=dlCnO3j2MN9+ecdlsrzCDMCgIekyhf9qkGx2asjpQ3UdySDN/9L4VJ2GMvpqDZ4Yp6vyvcbGTT+ptYlCdDmT1f0AKAPr+SkcjuBUepQArNKHENhUSMiYQpCTyj+TNgkTuCowaa0vC1BWhMdcNRQYPXTZuz/ICkCXirtUCKCk6Ic= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324023; c=relaxed/simple; bh=xKI0iG25BjEWQ1gvRDyg2KrUPAy82Y04LM+HtejJhYA=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=RDmiDjn5w7tN7h1O+ree8ToJ9jVhiEYnL2CUlpZ4xDvw2/vlRFBMonS5gXAeEsUFSypTIIQdjUwaupWFbagKSL72vPqdGJrb9fDDaDsWjEpoUAxi1KRTtxAaModFFv2buYQkzCgurqEKTwjFBjYuiQdbXnJr7dqbg+GrIHnyMkA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=tgH3HhFv; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="tgH3HhFv" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 9BA54C43399; Sun, 24 Mar 2024 23:47:01 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324022; bh=xKI0iG25BjEWQ1gvRDyg2KrUPAy82Y04LM+HtejJhYA=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=tgH3HhFvUtPfnfdC+OJHNirsoN1VoD4aEDqgfs8LDIX+Xoqg64X2Ena06JdhQ03Bd 87o673uw3L9LiH9e9vqAz12nEmYdHS/f1//TCeSrJg4QlYQAgfkoZotnhajKz8RvC7 41ZsJw4is+BcUxeK0fHamb131S2EzhiLKWup8+6ozJUGpNdmzQGaIOwZsRTadThxwK vWRJuzmSNTZKWHDrCn5HZPsZkcNC3lJifdtDw9YWz43rzuGyVfBUMoUCppGV51trUE EOYYnK0hBX1xKHQlc82iZLzM37ANCeXF4lY32e8oi4Tdv52czg9SRO3lKEsTJVzKXk 9nCBujIWFkpdA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Navid Emamdoost , Michal Kubecek , Kees Cook , Jens Axboe , Sasha Levin Subject: [PATCH 5.4 023/183] nbd: null check for nla_nest_start Date: Sun, 24 Mar 2024 19:43:56 -0400 Message-ID: <20240324234638.1355609-24-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Navid Emamdoost [ Upstream commit 31edf4bbe0ba27fd03ac7d87eb2ee3d2a231af6d ] nla_nest_start() may fail and return NULL. Insert a check and set errno based on other call sites within the same source code. Signed-off-by: Navid Emamdoost Reviewed-by: Michal Kubecek Fixes: 47d902b90a32 ("nbd: add a status netlink command") Signed-off-by: Kees Cook Link: https://lore.kernel.org/r/20240218042534.it.206-kees@kernel.org Signed-off-by: Jens Axboe Signed-off-by: Sasha Levin --- drivers/block/nbd.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/drivers/block/nbd.c b/drivers/block/nbd.c index 37994a7a1b6f4..f2d847ffcbc75 100644 --- a/drivers/block/nbd.c +++ b/drivers/block/nbd.c @@ -2313,6 +2313,12 @@ static int nbd_genl_status(struct sk_buff *skb, stru= ct genl_info *info) } =20 dev_list =3D nla_nest_start_noflag(reply, NBD_ATTR_DEVICE_LIST); + if (!dev_list) { + nlmsg_free(reply); + ret =3D -EMSGSIZE; + goto out; + } + if (index =3D=3D -1) { ret =3D idr_for_each(&nbd_index_idr, &status_cb, reply); if (ret) { --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C53E61802AD; Sun, 24 Mar 2024 23:47:03 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324023; cv=none; b=ogA5eJAv1wrZPgxALVEVOU+sbxWNJZuBkCG/yCb/Z6cWaWIj+oEGCmRReRmjymxsD5poyswCkAJSBLJZcGh63f6eqjVGDC8k1+OHYYYUZo//VTsG/MAya1Ubj0Yv9G4xs2JjKELTxzxSdP5N0fWi9Cw6Vn67lIXjfWO//qCe4U8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324023; c=relaxed/simple; bh=FJ7fTfbr0MetlnQpTrBJURTUL1X9wGEpmm5HLaUebVc=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=Zjr0z4VxN3Oiw61Nk5fFg7jaLMcog+Zq0ys6aG8RWyKshRBbhWJL3880SnjHqKBt+6cFdrM0vrTzgwaQGEwUs3VE1pv3WmyMt5NrHvqYOVf5KIIPaJy6v8UpT15rE1uOmJQ+5kJcLHAG9021VkmFVKIXW2bBxUfSjYNTwf2GT+4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=AotkNofG; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="AotkNofG" Received: by smtp.kernel.org (Postfix) with ESMTPSA id B1361C433C7; Sun, 24 Mar 2024 23:47:02 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324023; bh=FJ7fTfbr0MetlnQpTrBJURTUL1X9wGEpmm5HLaUebVc=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=AotkNofG5faXbQ5TUEvk/EsMLnQcyE8utDW9oH8BFApjCAEnANHbXR8iEKR7zG4Rh 9+hVHehApmXOTErC4+1YW1QojsbU+6gNHn+8reADLOykneaNK5NKlwVI0xW+TicwbL cPS79PmkbTZO6tYFFYHAbcaU2zrGCkfTbPTNXi7JsVudC2MpnUmUp1XfD3W6rY/CTm OotSpERb1biJJBSYZY2dLBbSvtthyI296VvVUbXWVAxNgcq0jqTR9nujTkCchueLYz y5D/9y//XvLMKN/4ODWdIssapQ40eb8D/wQ5qgzse/iONiZYflULJRX03ifzPOhKU1 k7dR8MRK2xAMQ== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Arnd Bergmann , Kees Cook , Andi Kleen , Jan Kara , Christian Brauner , Sasha Levin Subject: [PATCH 5.4 024/183] fs/select: rework stack allocation hack for clang Date: Sun, 24 Mar 2024 19:43:57 -0400 Message-ID: <20240324234638.1355609-25-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Arnd Bergmann [ Upstream commit ddb9fd7a544088ed70eccbb9f85e9cc9952131c1 ] A while ago, we changed the way that select() and poll() preallocate a temporary buffer just under the size of the static warning limit of 1024 bytes, as clang was frequently going slightly above that limit. The warnings have recently returned and I took another look. As it turns out, clang is not actually inherently worse at reserving stack space, it just happens to inline do_select() into core_sys_select(), while gcc never inlines it. Annotate do_select() to never be inlined and in turn remove the special case for the allocation size. This should give the same behavior for both clang and gcc all the time and once more avoids those warnings. Fixes: ad312f95d41c ("fs/select: avoid clang stack usage warning") Signed-off-by: Arnd Bergmann Link: https://lore.kernel.org/r/20240216202352.2492798-1-arnd@kernel.org Reviewed-by: Kees Cook Reviewed-by: Andi Kleen Reviewed-by: Jan Kara Signed-off-by: Christian Brauner Signed-off-by: Sasha Levin --- fs/select.c | 2 +- include/linux/poll.h | 4 ---- 2 files changed, 1 insertion(+), 5 deletions(-) diff --git a/fs/select.c b/fs/select.c index 7716d9d5be1e8..f405dc5adf3ca 100644 --- a/fs/select.c +++ b/fs/select.c @@ -475,7 +475,7 @@ static inline void wait_key_set(poll_table *wait, unsig= ned long in, wait->_key |=3D POLLOUT_SET; } =20 -static int do_select(int n, fd_set_bits *fds, struct timespec64 *end_time) +static noinline_for_stack int do_select(int n, fd_set_bits *fds, struct ti= mespec64 *end_time) { ktime_t expire, *to =3D NULL; struct poll_wqueues table; diff --git a/include/linux/poll.h b/include/linux/poll.h index 1cdc32b1f1b08..7e0fdcf905d2e 100644 --- a/include/linux/poll.h +++ b/include/linux/poll.h @@ -16,11 +16,7 @@ extern struct ctl_table epoll_table[]; /* for sysctl */ /* ~832 bytes of stack space used max in sys_select/sys_poll before alloca= ting additional memory. */ -#ifdef __clang__ -#define MAX_STACK_ALLOC 768 -#else #define MAX_STACK_ALLOC 832 -#endif #define FRONTEND_STACK_ALLOC 256 #define SELECT_STACK_ALLOC FRONTEND_STACK_ALLOC #define POLL_STACK_ALLOC FRONTEND_STACK_ALLOC --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id AF25C1802B5; Sun, 24 Mar 2024 23:47:04 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324024; cv=none; b=UWj6isaXIK21yvdrZ/fbHHimwmbESgwZ3fwDZQT9eqa+PTcpP2ksb5azyhgU5SwHRIlpKNuL0jWGHmS5bXogniYOtL3Njecsr4cTC3xuGKi/cGgixsjUz8zb/TZxtSz4IUZHDLSV7BOSqaoPBjedvYOfeRaXleZM8Vbx0D/wWFo= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324024; c=relaxed/simple; bh=AdKOgoZ7YM6xhwA39T+067LYWPCUSATZWLKHjQVp4b4=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=lDi+V5ujOs8sqP8C2KvCpBzqK7On3JT8Gt+4BCXvYaJXwB6NFCMgHzsa0lWcZaeW1VCRbVF8/q2xE86L/D6QWm2fEzkEctTgJU9W5VAQ53pW89DRDwt353u5rknGON2A1ZlgKKnQxWE/3mt91EzOwUo4AXOvb7xgUffFzmrvU1Q= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=Elwtz9Wu; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="Elwtz9Wu" Received: by smtp.kernel.org (Postfix) with ESMTPSA id EA14BC43390; Sun, 24 Mar 2024 23:47:03 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324024; bh=AdKOgoZ7YM6xhwA39T+067LYWPCUSATZWLKHjQVp4b4=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Elwtz9Wufg1fOo/VT5YlYkRb2gIqq7WinQ8MnMlM4Q781gi2iAW4j/Kzp+kXY1pyH rpkhIUlL6uAVQyi+S594DFFvh04YcOg0/7k/eczTtevocWC+mmox9UTgd/b9ajh3HM WUlGR1i0JSwN311iwYjhaaWhfeESKn68RcayVIw9ZPM+dCZhrBd06NkHVE00gQPeWS svjTkn+UrsgtvrL4P5iHEoUm3pNIvWoFBvv7J7ERgqyJzUQn8F5lDs+XFznf0P1Hxe YNiGMbs9rgJAv3iIkZSeNU2FJtknsl4sgKd7u8r5wcXMjEczGnWFkBzo9hd74W6sXq Ah0IE4mKovILQ== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Chun-Yi Lee , Jens Axboe , Sasha Levin Subject: [PATCH 5.4 025/183] aoe: fix the potential use-after-free problem in aoecmd_cfg_pkts Date: Sun, 24 Mar 2024 19:43:58 -0400 Message-ID: <20240324234638.1355609-26-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Chun-Yi Lee [ Upstream commit f98364e926626c678fb4b9004b75cacf92ff0662 ] This patch is against CVE-2023-6270. The description of cve is: A flaw was found in the ATA over Ethernet (AoE) driver in the Linux kernel. The aoecmd_cfg_pkts() function improperly updates the refcnt on `struct net_device`, and a use-after-free can be triggered by racing between the free on the struct and the access through the `skbtxq` global queue. This could lead to a denial of service condition or potential code execution. In aoecmd_cfg_pkts(), it always calls dev_put(ifp) when skb initial code is finished. But the net_device ifp will still be used in later tx()->dev_queue_xmit() in kthread. Which means that the dev_put(ifp) should NOT be called in the success path of skb initial code in aoecmd_cfg_pkts(). Otherwise tx() may run into use-after-free because the net_device is freed. This patch removed the dev_put(ifp) in the success path in aoecmd_cfg_pkts(), and added dev_put() after skb xmit in tx(). Link: https://nvd.nist.gov/vuln/detail/CVE-2023-6270 Fixes: 7562f876cd93 ("[NET]: Rework dev_base via list_head (v3)") Signed-off-by: Chun-Yi Lee Link: https://lore.kernel.org/r/20240305082048.25526-1-jlee@suse.com Signed-off-by: Jens Axboe Signed-off-by: Sasha Levin --- drivers/block/aoe/aoecmd.c | 12 ++++++------ drivers/block/aoe/aoenet.c | 1 + 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/drivers/block/aoe/aoecmd.c b/drivers/block/aoe/aoecmd.c index 3cf9bc5d8d959..3d5117be57f9f 100644 --- a/drivers/block/aoe/aoecmd.c +++ b/drivers/block/aoe/aoecmd.c @@ -420,13 +420,16 @@ aoecmd_cfg_pkts(ushort aoemajor, unsigned char aoemin= or, struct sk_buff_head *qu rcu_read_lock(); for_each_netdev_rcu(&init_net, ifp) { dev_hold(ifp); - if (!is_aoe_netif(ifp)) - goto cont; + if (!is_aoe_netif(ifp)) { + dev_put(ifp); + continue; + } =20 skb =3D new_skb(sizeof *h + sizeof *ch); if (skb =3D=3D NULL) { printk(KERN_INFO "aoe: skb alloc failure\n"); - goto cont; + dev_put(ifp); + continue; } skb_put(skb, sizeof *h + sizeof *ch); skb->dev =3D ifp; @@ -441,9 +444,6 @@ aoecmd_cfg_pkts(ushort aoemajor, unsigned char aoeminor= , struct sk_buff_head *qu h->major =3D cpu_to_be16(aoemajor); h->minor =3D aoeminor; h->cmd =3D AOECMD_CFG; - -cont: - dev_put(ifp); } rcu_read_unlock(); } diff --git a/drivers/block/aoe/aoenet.c b/drivers/block/aoe/aoenet.c index 63773a90581dd..1e66c7a188a12 100644 --- a/drivers/block/aoe/aoenet.c +++ b/drivers/block/aoe/aoenet.c @@ -64,6 +64,7 @@ tx(int id) __must_hold(&txlock) pr_warn("aoe: packet could not be sent on %s. %s\n", ifp ? ifp->name : "netif", "consider increasing tx_queue_len"); + dev_put(ifp); spin_lock_irq(&txlock); } return 0; --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id AE583224A03; Sun, 24 Mar 2024 23:47:05 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324026; cv=none; b=scp8HPwJngTRAFXRRyBcru1RQMwrm6q6jWzYUojO4ULxKivn2+ZjEWHETutTU8M6/UBOaNbuL1za6VDG0fjfDMSjF1P+mowNKJIW6f6O3BTXGErmafILX6PresdiUbSURZRfZtclm275f6fNbBu5fkFUQv0qJ+A3iVL55Xqi0W8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324026; c=relaxed/simple; bh=PY6QXC5NF5XvQGFaT52WK479ZqTA9uhgoUxN21uXupg=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=ZBzDZvbSA70vI1suASDqtuT7rw2g8G//31k0rrVSv+6w5Lvrh2gVTX6Dc72q4M/r8KC23Jq6iR53UM8+CbG1ye1eBBY7T8X2TArjw9F48KZjmlB+DqWwQm6A7Re9Xe7bHw+QDM3Cr3OHoEsAc9F9p30rM3fBC/zFZsHm8xA2fE0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=bq4xxRq6; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="bq4xxRq6" Received: by smtp.kernel.org (Postfix) with ESMTPSA id D30D3C433F1; Sun, 24 Mar 2024 23:47:04 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324025; bh=PY6QXC5NF5XvQGFaT52WK479ZqTA9uhgoUxN21uXupg=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=bq4xxRq6PAOpmV+B2wpo4srKLCOjZtKFDAP4l7pUWiGVojSZz5+cqCjm24WNvxOWs uxC9avRNqkdZCVWyGFV7AVEF6XDy4uXXawxXT1N8K1qGULXM7lmA/op+99ZSw/JWpJ e7UKJnII9RrO3YmNdsMoA0AEkvk7MizRnUm6AUr53S2xZiCcs7KCv+P/0BK4A+BXSX 6/i1tXIxfnMLQlUM9oT2jg1ajm8fWtfenWUmEmPImbi2NsuXX3kkAcZOHIh1MkDcFD Yp7py/ENlWBtdDf9GNG0ABNwYnHi+CsmfjjhUtfEUGvVdjANVK/Y5XZd+GSaqzyISf pGZjf67c0Zuvg== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Peter Hilber , Thomas Gleixner , John Stultz , Sasha Levin Subject: [PATCH 5.4 026/183] timekeeping: Fix cross-timestamp interpolation on counter wrap Date: Sun, 24 Mar 2024 19:43:59 -0400 Message-ID: <20240324234638.1355609-27-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Peter Hilber [ Upstream commit 84dccadd3e2a3f1a373826ad71e5ced5e76b0c00 ] cycle_between() decides whether get_device_system_crosststamp() will interpolate for older counter readings. cycle_between() yields wrong results for a counter wrap-around where after < before < test, and for the case after < test < before. Fix the comparison logic. Fixes: 2c756feb18d9 ("time: Add history to cross timestamp interface suppor= ting slower devices") Signed-off-by: Peter Hilber Signed-off-by: Thomas Gleixner Acked-by: John Stultz Link: https://lore.kernel.org/r/20231218073849.35294-2-peter.hilber@opensyn= ergy.com Signed-off-by: Sasha Levin --- kernel/time/timekeeping.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/time/timekeeping.c b/kernel/time/timekeeping.c index 105dd0b663291..5ae2b5b5ce4a0 100644 --- a/kernel/time/timekeeping.c +++ b/kernel/time/timekeeping.c @@ -1099,7 +1099,7 @@ static bool cycle_between(u64 before, u64 test, u64 a= fter) { if (test > before && test < after) return true; - if (test < before && before > after) + if (before > after && (test > before || test < after)) return true; return false; } --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9A4612888E3; Sun, 24 Mar 2024 23:47:06 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324027; cv=none; b=rAEOdaKbtnuhFomRJXTwuOpME1bfGWG2xewsf5cQhYOVlGhp3qKaMMnTkplkCKvT77nINlHyk+4kXcSzvoWymt+uaheVf1hhXke8lrb6SLVIunrfYGEIVlJF5FhnXFQFzjlpsJsk5uYkM10yRlmZb+S6lJWn0eFHHUnEqNNBPJ8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324027; c=relaxed/simple; bh=dyyCUNazY7Cg9l+p9muz7oGAYXN3AL7zZVHcER5BY7w=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=XSkeOVGApCf186Q0PPgMAnRnX43yjA3HvJuxPph+/sY1jnYGcFKzNUOhfkmvJDIrDQ1XDbyr/JRKYdLu1x0zl2PmKGcq9ij+hZ0jeAIddOglNCd7YY8jCpEeFjZUeijvVfrj+D4jiNYi7+zK6VBtex2a9+KfBj/7g6u1eQX/dOc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=C7auashi; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="C7auashi" Received: by smtp.kernel.org (Postfix) with ESMTPSA id D354AC433C7; Sun, 24 Mar 2024 23:47:05 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324026; bh=dyyCUNazY7Cg9l+p9muz7oGAYXN3AL7zZVHcER5BY7w=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=C7auashiPodmZHpXURtqMzVd1QqPOk0yd26+z0s1ZFVsbo2HH7B3ztI/hEIzpjwWq 4dfBXXSx+IE7bO9L6R2zfrKw/LOf1K+He94L6RGMDR8rDBT8sqYoyXWM8ZuZTqZs3N lXU4VwFA+cXh7iF2YMczzo2LMezAy4wYpXNmqTMcNIqGPv93aVVft5ataQLG0raDCg y5MCgCjH7iTBoWA+/MV6WC7HrZPUVD/hpUQHUM4T6XlrDMUa7XJBUwNoBEDmxyha5c o0hjmmlFpedA7PXJuqiqWm3Xa+yo6YlJ8XYeZ32UGXI1899YarmACKzel2RerCLii4 J6wLR+bDicADw== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Peter Hilber , Thomas Gleixner , Sasha Levin Subject: [PATCH 5.4 027/183] timekeeping: Fix cross-timestamp interpolation corner case decision Date: Sun, 24 Mar 2024 19:44:00 -0400 Message-ID: <20240324234638.1355609-28-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Peter Hilber [ Upstream commit 87a41130881995f82f7adbafbfeddaebfb35f0ef ] The cycle_between() helper checks if parameter test is in the open interval (before, after). Colloquially speaking, this also applies to the counter wrap-around special case before > after. get_device_system_crosststamp() currently uses cycle_between() at the first call site to decide whether to interpolate for older counter readings. get_device_system_crosststamp() has the following problem with cycle_between() testing against an open interval: Assume that, by chance, cycles =3D=3D tk->tkr_mono.cycle_last (in the following, "cycle_last" for brevity). Then, cycle_between() at the first call site, with effective argument values cycle_between(cycle_last, cycles, now), returns false, enabling interpolation. During interpolation, get_device_system_crosststamp() will then call cycle_between() at the second call site (if a history_begin was supplied). The effective argument values are cycle_between(history_begin->cycles, cycles, cycles), since system_counterval.cycles =3D=3D interval_start =3D=3D cycles, per the assum= ption. Due to the test against the open interval, cycle_between() returns false again. This causes get_device_system_crosststamp() to return -EINVAL. This failure should be avoided, since get_device_system_crosststamp() works both when cycles follows cycle_last (no interpolation), and when cycles precedes cycle_last (interpolation). For the case cycles =3D=3D cycle_last, interpolation is actually unneeded. Fix this by changing cycle_between() into timestamp_in_interval(), which now checks against the closed interval, rather than the open interval. This changes the get_device_system_crosststamp() behavior for three corner cases: 1. Bypass interpolation in the case cycles =3D=3D tk->tkr_mono.cycle_last, fixing the problem described above. 2. At the first timestamp_in_interval() call site, cycles =3D=3D now no lon= ger causes failure. 3. At the second timestamp_in_interval() call site, history_begin->cycles =3D=3D system_counterval.cycles no longer causes failure. adjust_historical_crosststamp() also works for this corner case, where partial_history_cycles =3D=3D total_history_cycles. These behavioral changes should not cause any problems. Fixes: 2c756feb18d9 ("time: Add history to cross timestamp interface suppor= ting slower devices") Signed-off-by: Peter Hilber Signed-off-by: Thomas Gleixner Link: https://lore.kernel.org/r/20231218073849.35294-3-peter.hilber@opensyn= ergy.com Signed-off-by: Sasha Levin --- kernel/time/timekeeping.c | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/kernel/time/timekeeping.c b/kernel/time/timekeeping.c index 5ae2b5b5ce4a0..2a43c26e913e9 100644 --- a/kernel/time/timekeeping.c +++ b/kernel/time/timekeeping.c @@ -1093,13 +1093,15 @@ static int adjust_historical_crosststamp(struct sys= tem_time_snapshot *history, } =20 /* - * cycle_between - true if test occurs chronologically between before and = after + * timestamp_in_interval - true if ts is chronologically in [start, end] + * + * True if ts occurs chronologically at or after start, and before or at e= nd. */ -static bool cycle_between(u64 before, u64 test, u64 after) +static bool timestamp_in_interval(u64 start, u64 end, u64 ts) { - if (test > before && test < after) + if (ts >=3D start && ts <=3D end) return true; - if (before > after && (test > before || test < after)) + if (start > end && (ts >=3D start || ts <=3D end)) return true; return false; } @@ -1159,7 +1161,7 @@ int get_device_system_crosststamp(int (*get_time_fn) */ now =3D tk_clock_read(&tk->tkr_mono); interval_start =3D tk->tkr_mono.cycle_last; - if (!cycle_between(interval_start, cycles, now)) { + if (!timestamp_in_interval(interval_start, now, cycles)) { clock_was_set_seq =3D tk->clock_was_set_seq; cs_was_changed_seq =3D tk->cs_was_changed_seq; cycles =3D interval_start; @@ -1190,13 +1192,13 @@ int get_device_system_crosststamp(int (*get_time_fn) bool discontinuity; =20 /* - * Check that the counter value occurs after the provided + * Check that the counter value is not before the provided * history reference and that the history doesn't cross a * clocksource change */ if (!history_begin || - !cycle_between(history_begin->cycles, - system_counterval.cycles, cycles) || + !timestamp_in_interval(history_begin->cycles, + cycles, system_counterval.cycles) || history_begin->cs_was_changed_seq !=3D cs_was_changed_seq) return -EINVAL; partial_history_cycles =3D cycles - system_counterval.cycles; --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9C7882888EB; Sun, 24 Mar 2024 23:47:07 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324028; cv=none; b=MSkTa+O/KeCflATOV7yI3Qm9NJXnJFYZosxsrAcnZTrlTYhvW/9hvkKjfUgxDIer1AvLEUGtGu+NNdxcmrQbXRzZYAtDPIPBG4YA9gd8KnTCypG6Kf28sbFG8c1UtRykyNzvfjOZ2ch+veytt/zIr+0S11P8SrKX4XXbOSCE+rE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324028; c=relaxed/simple; bh=5b7W79Vlv/Kmt5tTngf7pb5Y3IdZqI9FDgkRFlz9aSI=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=qnfg5KwyJ9ANIVheiZwdkUJpqr8ENQbqF9++mQRh/BDGxD5Cd2GYZnC0TmjMBliB74nVAjLQ0vfSWfpwh4+9x72RHmjwKtuRyMWM8jgNJdv7U1pyAHP2aqJwV3gpGGQ02XOPWSU1BPcPqq1GGGec/QwBbR0V3m6lAJp1Wo05BcU= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=rTpmuhKD; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="rTpmuhKD" Received: by smtp.kernel.org (Postfix) with ESMTPSA id BDA44C43399; Sun, 24 Mar 2024 23:47:06 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324027; bh=5b7W79Vlv/Kmt5tTngf7pb5Y3IdZqI9FDgkRFlz9aSI=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=rTpmuhKDH2im9LMRfu/j2BOuO/vfUg8EBikqrkHiR0Dv2OHM81v5gu6YihCLCY8x8 aRP+ZIaPCbXfPC8JSPB9O2kcNGBNo6PUi3MotXN3JNXLXH/mCm2QtaLinQ+FuyDkZG FP4GnSsQ8ftppunGxLAJBDK+bhyOlUFZtETR3EHdNLyb6uE0ZmeKGN9XvWl3EWvds/ Xr/q1jSwEMsxsCK0tQel1bJS2k/7D/cf56zVAGMTS6L8QLFvXWrhoujMYSPKsXcOUR +hbEmelVGld/FzjApVapLCBFBd5qXocl+Wddpfu0sFCma4fs6eWmpSakvgCWfh/OQJ 79mA9Cc/jnpWA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Peter Hilber , Thomas Gleixner , John Stultz , Sasha Levin Subject: [PATCH 5.4 028/183] timekeeping: Fix cross-timestamp interpolation for non-x86 Date: Sun, 24 Mar 2024 19:44:01 -0400 Message-ID: <20240324234638.1355609-29-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Peter Hilber [ Upstream commit 14274d0bd31b4debf28284604589f596ad2e99f2 ] So far, get_device_system_crosststamp() unconditionally passes system_counterval.cycles to timekeeping_cycles_to_ns(). But when interpolating system time (do_interp =3D=3D true), system_counterval.cycles= is before tkr_mono.cycle_last, contrary to the timekeeping_cycles_to_ns() expectations. On x86, CONFIG_CLOCKSOURCE_VALIDATE_LAST_CYCLE will mitigate on interpolating, setting delta to 0. With delta =3D=3D 0, xtstamp->sys_monoraw and xtstamp->sys_realtime are then set to the last update time, as implicitly expected by adjust_historical_crosststamp(). On other architectures, the resulting nonsense xtstamp->sys_monoraw and xtstamp->sys_realtime corrupt the xtstamp (ts) adjustment in adjust_historical_crosststamp(). Fix this by deriving xtstamp->sys_monoraw and xtstamp->sys_realtime from the last update time when interpolating, by using the local variable "cycles". The local variable already has the right value when interpolating, unlike system_counterval.cycles. Fixes: 2c756feb18d9 ("time: Add history to cross timestamp interface suppor= ting slower devices") Signed-off-by: Peter Hilber Signed-off-by: Thomas Gleixner Acked-by: John Stultz Link: https://lore.kernel.org/r/20231218073849.35294-4-peter.hilber@opensyn= ergy.com Signed-off-by: Sasha Levin --- kernel/time/timekeeping.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/kernel/time/timekeeping.c b/kernel/time/timekeeping.c index 2a43c26e913e9..c202dbd87860c 100644 --- a/kernel/time/timekeeping.c +++ b/kernel/time/timekeeping.c @@ -1174,10 +1174,8 @@ int get_device_system_crosststamp(int (*get_time_fn) tk_core.timekeeper.offs_real); base_raw =3D tk->tkr_raw.base; =20 - nsec_real =3D timekeeping_cycles_to_ns(&tk->tkr_mono, - system_counterval.cycles); - nsec_raw =3D timekeeping_cycles_to_ns(&tk->tkr_raw, - system_counterval.cycles); + nsec_real =3D timekeeping_cycles_to_ns(&tk->tkr_mono, cycles); + nsec_raw =3D timekeeping_cycles_to_ns(&tk->tkr_raw, cycles); } while (read_seqcount_retry(&tk_core.seq, seq)); =20 xtstamp->sys_realtime =3D ktime_add_ns(base_real, nsec_real); --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9DAF92888F5; Sun, 24 Mar 2024 23:47:08 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324029; cv=none; b=F2nBSOrXE1/IYs+n9XQnj/rd/IBcSBwdZD/dXXpXTHijXxbXOWnPM91klTUf6WCxIj/EX6V80Ht5sv0jRKQdflro9vX2BuNO6rTfzUGt1IhwKyKnE46lm5WULXbTqQxlOalhxcwi/LbyLGBTEvamMJUclhHRG+3KxcyGmzzLhgw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324029; c=relaxed/simple; bh=/VL63NEbWikFES4mHo/PX6luf7WkfDLqQ69lE8hGFFY=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=AAENjPdzx3IaJPmbpyROEwTL+/wRIe4FVQwdVrUB3RWs8cVnfSUjvIbSf3bbSL9ks6AAXRf4hlJFX584F7ng3STkF9Zi/472PBDhyMEHpkquMfLGVifxYecAfZ8vQUtX1mK5qmYV1lBsWDpf8mGqvJdqEs888ermXvWgPAHN3vU= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=j1R1HNzC; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="j1R1HNzC" Received: by smtp.kernel.org (Postfix) with ESMTPSA id C22D7C433C7; Sun, 24 Mar 2024 23:47:07 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324028; bh=/VL63NEbWikFES4mHo/PX6luf7WkfDLqQ69lE8hGFFY=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=j1R1HNzCtkhbzMg0IYJEuiDrVs9/ClO8pCCM0+sD3jZBPkFxzpj9mXe5wUt/sKZlu PjU8QQWTkGObIKeohos4gt/W+BSu58GAST26E8WyJkFqdFuBEcS6C3lZhQ1VPaNl4d nS4jbVHCQ1SjiFy3Td+jvbnSgdb3sr0GMGfdYpypMy88t7009N7E97gAtmsp633AbQ hRdK2CvNlhGgm6NZS6daMMm8rwpU8/aBWCVy2Xv8/ABOeTBWRBIG6S41h+j31g9sb1 D6m3WLSMtlEA3k19kqLmMP3GWjdyGrgKkbEF2/FDpT9Cdq32mmFooMH0MDts4ZlljG yDkx6CXgk1J4g== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Xingyuan Mo , Jeff Johnson , Kalle Valo , Sasha Levin Subject: [PATCH 5.4 029/183] wifi: ath10k: fix NULL pointer dereference in ath10k_wmi_tlv_op_pull_mgmt_tx_compl_ev() Date: Sun, 24 Mar 2024 19:44:02 -0400 Message-ID: <20240324234638.1355609-30-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Xingyuan Mo [ Upstream commit ad25ee36f00172f7d53242dc77c69fff7ced0755 ] We should check whether the WMI_TLV_TAG_STRUCT_MGMT_TX_COMPL_EVENT tlv is present before accessing it, otherwise a null pointer deference error will occur. Fixes: dc405152bb64 ("ath10k: handle mgmt tx completion event") Signed-off-by: Xingyuan Mo Acked-by: Jeff Johnson Signed-off-by: Kalle Valo Link: https://msgid.link/20231208043433.271449-1-hdthky0@gmail.com Signed-off-by: Sasha Levin --- drivers/net/wireless/ath/ath10k/wmi-tlv.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/net/wireless/ath/ath10k/wmi-tlv.c b/drivers/net/wirele= ss/ath/ath10k/wmi-tlv.c index 315d20f5c8eb1..ee1c86bb5078b 100644 --- a/drivers/net/wireless/ath/ath10k/wmi-tlv.c +++ b/drivers/net/wireless/ath/ath10k/wmi-tlv.c @@ -707,6 +707,10 @@ ath10k_wmi_tlv_op_pull_mgmt_tx_compl_ev(struct ath10k = *ar, struct sk_buff *skb, } =20 ev =3D tb[WMI_TLV_TAG_STRUCT_MGMT_TX_COMPL_EVENT]; + if (!ev) { + kfree(tb); + return -EPROTO; + } =20 arg->desc_id =3D ev->desc_id; arg->status =3D ev->status; --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 7DE9B2888F3; Sun, 24 Mar 2024 23:47:09 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324029; cv=none; b=FEnLcbJop0laGC3uy1b63XJpp9TYM1wv/SIxZIpGN7311zvqkaBkPFPSU4uFAd/jwn12rn5KrvFNxmK0BHx/38l19zBihWFyZhl+Pcaj+qbp+hdst+qPB9v9YJJh4bzl63rsFh/mOHm/YC4LQEp3PziLqPT23vKDXQQsVhZlKCQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324029; c=relaxed/simple; bh=IJFSgVV4XeProZS7rGdXSMesbyiCReEtdh/vQSyQjDM=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=T2zSpHLDwjkijpFYdOQcOXJkBZ6ARziDJOk+Cpg2Vfg/kcwI3wL7p0wL3hZBQmyjgU2qZ/5YN7Sayj821Cb42R1R6uNpw/UYmOGTAGa8ngmAkEMA8DT9FpB4ZZwFEtf5MyCN9SkOItdX7i79WDAQC9LXKrWajvppyYJpRlpwee4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=Kp1e62m/; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="Kp1e62m/" Received: by smtp.kernel.org (Postfix) with ESMTPSA id BF479C43394; Sun, 24 Mar 2024 23:47:08 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324029; bh=IJFSgVV4XeProZS7rGdXSMesbyiCReEtdh/vQSyQjDM=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Kp1e62m/RLhtiFv8ExUTccK10jxcqROb3lKQFVapZ0YJRxrDmJD/sxc1rcs+YhgpP UQGWr/sh/NwabsKeNpdo9UfwmK1kYsCoGa/7fIpXzh3V3N4E397d8Sn4Iz+NurSGZy 43wIOkOALSboncF6iSJBNt8A2Pk/gU5QeQmrFWLvymJ+6i6+eqSFg+fVFgfu/fYZS0 zdeU+GiuTsF6VsjeJLKtr64qEX2QPi+Jg+hmj4WtkvUoFC2XoIzBv5zampKw9m5/J8 N0NeaWA73U5Bb14HxB/aSCeoqd64MxIeUIeFfbK07X/nVGz/80mWwk01+/5bTA3kov sXdtf1I2ick1g== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Saurav Girepunje , Kalle Valo , Sasha Levin Subject: [PATCH 5.4 030/183] b43: dma: Fix use true/false for bool type variable Date: Sun, 24 Mar 2024 19:44:03 -0400 Message-ID: <20240324234638.1355609-31-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Saurav Girepunje [ Upstream commit a9160bb35ad9ada8428a4d48426f7fc128db40cc ] use true/false for bool type variables assignment. Signed-off-by: Saurav Girepunje Signed-off-by: Kalle Valo Stable-dep-of: 9636951e4468 ("wifi: b43: Stop/wake correct queue in DMA Tx = path when QoS is disabled") Signed-off-by: Sasha Levin --- drivers/net/wireless/broadcom/b43/dma.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/net/wireless/broadcom/b43/dma.c b/drivers/net/wireless= /broadcom/b43/dma.c index 72bf07540da39..ca671fc13116f 100644 --- a/drivers/net/wireless/broadcom/b43/dma.c +++ b/drivers/net/wireless/broadcom/b43/dma.c @@ -1400,7 +1400,7 @@ int b43_dma_tx(struct b43_wldev *dev, struct sk_buff = *skb) /* This TX ring is full. */ unsigned int skb_mapping =3D skb_get_queue_mapping(skb); ieee80211_stop_queue(dev->wl->hw, skb_mapping); - dev->wl->tx_queue_stopped[skb_mapping] =3D 1; + dev->wl->tx_queue_stopped[skb_mapping] =3D true; ring->stopped =3D true; if (b43_debug(dev, B43_DBG_DMAVERBOSE)) { b43dbg(dev->wl, "Stopped TX ring %d\n", ring->index); @@ -1566,7 +1566,7 @@ void b43_dma_handle_txstatus(struct b43_wldev *dev, } =20 if (dev->wl->tx_queue_stopped[ring->queue_prio]) { - dev->wl->tx_queue_stopped[ring->queue_prio] =3D 0; + dev->wl->tx_queue_stopped[ring->queue_prio] =3D false; } else { /* If the driver queue is running wake the corresponding * mac80211 queue. */ --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 8545A288905; Sun, 24 Mar 2024 23:47:10 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324031; cv=none; b=YzzrM20v/pqIdDl4g5Ebm5WH+UOKoWPK/gfPUXnh8mx8Jw/KmVSLq5jw0FfnRrpkimSHHcU1HhppdoscuqguTp+VRqarT0UnxGsAo/bmiFyHnGZBfQ9vUQZiIr02P5WLliH+NGG0HxRhrBjNBYRtgtPWJnxAz5EnH+ws9MXVfNI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324031; c=relaxed/simple; bh=LJVlXU49cv+4qzQmM8XFPpVmX1m8nq67J+BC1jtawl0=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=G4sfpk3mjPajQrHfVkJw+yKQftCAMGdc01b8781qPHHGA/zktQJ5Z/adi8RKSnHjK33XMcWVzdbt3T3xDAWrH9zjgte4Yaicpu8WUm6aRKaSQJCx3KjRQVpELyAflbR7ne/SQCACuP5yCRBz+H80gbYmfgIuSk8XzvGLMBzud5A= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=nUMkZ0xU; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="nUMkZ0xU" Received: by smtp.kernel.org (Postfix) with ESMTPSA id A44BEC433F1; Sun, 24 Mar 2024 23:47:09 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324030; bh=LJVlXU49cv+4qzQmM8XFPpVmX1m8nq67J+BC1jtawl0=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=nUMkZ0xUdSwTT16BsTE3/erneH6XOiQUpQuPKNqC523zzKwQ71X/tBVNKy62RnHS4 lezzl8MrHDLLIgygF82sZfWiXekiHTa8bgT1951n6e8i6ZOJsBkp3yJotfw15Y+p5c TJ/hqQof7dGbb3zvZ7dV1C0hpU30xWsJqqAv3YXHWfzeXfY7euIV6RGLmXCeFm8IBl inVdvmDw7D121z//hBkcowQtj1O3Y//jUKmr8hRiBDwf88RNQ+pqhkMo/ijaMxWsYX XWfx/hAyf1XXLuHuapk1dBNJ9pKDr6zAdfIro/XPDMJevZFx3J6amwGQnJSGJvFHD7 jOzJArXxFvBKg== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Rahul Rameshbabu , Julian Calaby , Kalle Valo , Sasha Levin Subject: [PATCH 5.4 031/183] wifi: b43: Stop/wake correct queue in DMA Tx path when QoS is disabled Date: Sun, 24 Mar 2024 19:44:04 -0400 Message-ID: <20240324234638.1355609-32-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Rahul Rameshbabu [ Upstream commit 9636951e4468f02c72cc75a82dc65d003077edbc ] When QoS is disabled, the queue priority value will not map to the correct ieee80211 queue since there is only one queue. Stop/wake queue 0 when QoS is disabled to prevent trying to stop/wake a non-existent queue and failing to stop/wake the actual queue instantiated. Log of issue before change (with kernel parameter qos=3D0): [ +5.112651] ------------[ cut here ]------------ [ +0.000005] WARNING: CPU: 7 PID: 25513 at net/mac80211/util.c:449 __i= eee80211_wake_queue+0xd5/0x180 [mac80211] [ +0.000067] Modules linked in: b43(O) snd_seq_dummy snd_hrtimer snd_s= eq snd_seq_device nft_chain_nat xt_MASQUERADE nf_nat xfrm_user xfrm_algo xt= _addrtype overlay ccm af_packet amdgpu snd_hda_codec_cirrus snd_hda_codec_g= eneric ledtrig_audio drm_exec amdxcp gpu_sched xt_conntrack nf_conntrack nf= _defrag_ipv6 nf_defrag_ipv4 ip6t_rpfilter ipt_rpfilter xt_pkttype xt_LOG nf= _log_syslog xt_tcpudp nft_compat nf_tables nfnetlink sch_fq_codel btusb uin= put iTCO_wdt ctr btrtl intel_pmc_bxt i915 intel_rapl_msr mei_hdcp mei_pxp j= oydev at24 watchdog btintel atkbd libps2 serio radeon btbcm vivaldi_fmap bt= mtk intel_rapl_common snd_hda_codec_hdmi bluetooth uvcvideo nls_iso8859_1 a= pplesmc nls_cp437 x86_pkg_temp_thermal snd_hda_intel intel_powerclamp vfat = videobuf2_vmalloc coretemp fat snd_intel_dspcfg crc32_pclmul uvc polyval_cl= mulni snd_intel_sdw_acpi loop videobuf2_memops snd_hda_codec tun drm_suball= oc_helper polyval_generic drm_ttm_helper drm_buddy tap ecdh_generic videobu= f2_v4l2 gf128mul macvlan ttm ghash_clmulni_intel ecc tg3 [ +0.000044] videodev bridge snd_hda_core rapl crc16 drm_display_help= er cec mousedev snd_hwdep evdev intel_cstate bcm5974 hid_appleir videobuf2_= common stp mac_hid libphy snd_pcm drm_kms_helper acpi_als mei_me intel_unco= re llc mc snd_timer intel_gtt industrialio_triggered_buffer apple_mfi_fastc= harge i2c_i801 mei snd lpc_ich agpgart ptp i2c_smbus thunderbolt apple_gmux= i2c_algo_bit kfifo_buf video industrialio soundcore pps_core wmi tiny_powe= r_button sbs sbshc button ac cordic bcma mac80211 cfg80211 ssb rfkill libar= c4 kvm_intel kvm drm irqbypass fuse backlight firmware_class efi_pstore con= figfs efivarfs dmi_sysfs ip_tables x_tables autofs4 dm_crypt cbc encrypted_= keys trusted asn1_encoder tee tpm rng_core input_leds hid_apple led_class h= id_generic usbhid hid sd_mod t10_pi crc64_rocksoft crc64 crc_t10dif crct10d= if_generic ahci libahci libata uhci_hcd ehci_pci ehci_hcd crct10dif_pclmul = crct10dif_common sha512_ssse3 sha512_generic sha256_ssse3 sha1_ssse3 aesni_= intel usbcore scsi_mod libaes crypto_simd cryptd scsi_common [ +0.000055] usb_common rtc_cmos btrfs blake2b_generic libcrc32c crc3= 2c_generic crc32c_intel xor raid6_pq dm_snapshot dm_bufio dm_mod dax [last = unloaded: b43(O)] [ +0.000009] CPU: 7 PID: 25513 Comm: irq/17-b43 Tainted: G W O= 6.6.7 #1-NixOS [ +0.000003] Hardware name: Apple Inc. MacBookPro8,3/Mac-942459F5819B1= 71B, BIOS 87.0.0.0.0 06/13/2019 [ +0.000001] RIP: 0010:__ieee80211_wake_queue+0xd5/0x180 [mac80211] [ +0.000046] Code: 00 45 85 e4 0f 85 9b 00 00 00 48 8d bd 40 09 00 00 = f0 48 0f ba ad 48 09 00 00 00 72 0f 5b 5d 41 5c 41 5d 41 5e e9 cb 6d 3c d0 = <0f> 0b 5b 5d 41 5c 41 5d 41 5e c3 cc cc cc cc 48 8d b4 16 94 00 00 [ +0.000002] RSP: 0018:ffffc90003c77d60 EFLAGS: 00010097 [ +0.000001] RAX: 0000000000000001 RBX: 0000000000000002 RCX: 00000000= 00000000 [ +0.000001] RDX: 0000000000000000 RSI: 0000000000000002 RDI: ffff8882= 0b924900 [ +0.000002] RBP: ffff88820b924900 R08: ffffc90003c77d90 R09: 00000000= 0003bfd0 [ +0.000001] R10: ffff88820b924900 R11: ffffc90003c77c68 R12: 00000000= 00000000 [ +0.000001] R13: 0000000000000000 R14: ffffc90003c77d90 R15: ffffffff= c0fa6f40 [ +0.000001] FS: 0000000000000000(0000) GS:ffff88846fb80000(0000) knl= GS:0000000000000000 [ +0.000001] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ +0.000001] CR2: 00007fafda7ae008 CR3: 000000046d220005 CR4: 00000000= 000606e0 [ +0.000002] Call Trace: [ +0.000003] [ +0.000001] ? __ieee80211_wake_queue+0xd5/0x180 [mac80211] [ +0.000044] ? __warn+0x81/0x130 [ +0.000005] ? __ieee80211_wake_queue+0xd5/0x180 [mac80211] [ +0.000045] ? report_bug+0x171/0x1a0 [ +0.000004] ? handle_bug+0x41/0x70 [ +0.000004] ? exc_invalid_op+0x17/0x70 [ +0.000003] ? asm_exc_invalid_op+0x1a/0x20 [ +0.000005] ? __ieee80211_wake_queue+0xd5/0x180 [mac80211] [ +0.000043] ieee80211_wake_queue+0x4a/0x80 [mac80211] [ +0.000044] b43_dma_handle_txstatus+0x29c/0x3a0 [b43] [ +0.000016] ? __pfx_irq_thread_fn+0x10/0x10 [ +0.000002] b43_handle_txstatus+0x61/0x80 [b43] [ +0.000012] b43_interrupt_thread_handler+0x3f9/0x6b0 [b43] [ +0.000011] irq_thread_fn+0x23/0x60 [ +0.000002] irq_thread+0xfe/0x1c0 [ +0.000002] ? __pfx_irq_thread_dtor+0x10/0x10 [ +0.000001] ? __pfx_irq_thread+0x10/0x10 [ +0.000001] kthread+0xe8/0x120 [ +0.000003] ? __pfx_kthread+0x10/0x10 [ +0.000003] ret_from_fork+0x34/0x50 [ +0.000002] ? __pfx_kthread+0x10/0x10 [ +0.000002] ret_from_fork_asm+0x1b/0x30 [ +0.000004] [ +0.000001] ---[ end trace 0000000000000000 ]--- [ +0.000065] ------------[ cut here ]------------ [ +0.000001] WARNING: CPU: 0 PID: 56077 at net/mac80211/util.c:514 __i= eee80211_stop_queue+0xcc/0xe0 [mac80211] [ +0.000077] Modules linked in: b43(O) snd_seq_dummy snd_hrtimer snd_s= eq snd_seq_device nft_chain_nat xt_MASQUERADE nf_nat xfrm_user xfrm_algo xt= _addrtype overlay ccm af_packet amdgpu snd_hda_codec_cirrus snd_hda_codec_g= eneric ledtrig_audio drm_exec amdxcp gpu_sched xt_conntrack nf_conntrack nf= _defrag_ipv6 nf_defrag_ipv4 ip6t_rpfilter ipt_rpfilter xt_pkttype xt_LOG nf= _log_syslog xt_tcpudp nft_compat nf_tables nfnetlink sch_fq_codel btusb uin= put iTCO_wdt ctr btrtl intel_pmc_bxt i915 intel_rapl_msr mei_hdcp mei_pxp j= oydev at24 watchdog btintel atkbd libps2 serio radeon btbcm vivaldi_fmap bt= mtk intel_rapl_common snd_hda_codec_hdmi bluetooth uvcvideo nls_iso8859_1 a= pplesmc nls_cp437 x86_pkg_temp_thermal snd_hda_intel intel_powerclamp vfat = videobuf2_vmalloc coretemp fat snd_intel_dspcfg crc32_pclmul uvc polyval_cl= mulni snd_intel_sdw_acpi loop videobuf2_memops snd_hda_codec tun drm_suball= oc_helper polyval_generic drm_ttm_helper drm_buddy tap ecdh_generic videobu= f2_v4l2 gf128mul macvlan ttm ghash_clmulni_intel ecc tg3 [ +0.000073] videodev bridge snd_hda_core rapl crc16 drm_display_help= er cec mousedev snd_hwdep evdev intel_cstate bcm5974 hid_appleir videobuf2_= common stp mac_hid libphy snd_pcm drm_kms_helper acpi_als mei_me intel_unco= re llc mc snd_timer intel_gtt industrialio_triggered_buffer apple_mfi_fastc= harge i2c_i801 mei snd lpc_ich agpgart ptp i2c_smbus thunderbolt apple_gmux= i2c_algo_bit kfifo_buf video industrialio soundcore pps_core wmi tiny_powe= r_button sbs sbshc button ac cordic bcma mac80211 cfg80211 ssb rfkill libar= c4 kvm_intel kvm drm irqbypass fuse backlight firmware_class efi_pstore con= figfs efivarfs dmi_sysfs ip_tables x_tables autofs4 dm_crypt cbc encrypted_= keys trusted asn1_encoder tee tpm rng_core input_leds hid_apple led_class h= id_generic usbhid hid sd_mod t10_pi crc64_rocksoft crc64 crc_t10dif crct10d= if_generic ahci libahci libata uhci_hcd ehci_pci ehci_hcd crct10dif_pclmul = crct10dif_common sha512_ssse3 sha512_generic sha256_ssse3 sha1_ssse3 aesni_= intel usbcore scsi_mod libaes crypto_simd cryptd scsi_common [ +0.000084] usb_common rtc_cmos btrfs blake2b_generic libcrc32c crc3= 2c_generic crc32c_intel xor raid6_pq dm_snapshot dm_bufio dm_mod dax [last = unloaded: b43] [ +0.000012] CPU: 0 PID: 56077 Comm: kworker/u16:17 Tainted: G = W O 6.6.7 #1-NixOS [ +0.000003] Hardware name: Apple Inc. MacBookPro8,3/Mac-942459F5819B1= 71B, BIOS 87.0.0.0.0 06/13/2019 [ +0.000001] Workqueue: phy7 b43_tx_work [b43] [ +0.000019] RIP: 0010:__ieee80211_stop_queue+0xcc/0xe0 [mac80211] [ +0.000076] Code: 74 11 48 8b 78 08 0f b7 d6 89 e9 4c 89 e6 e8 ab f4 = 00 00 65 ff 0d 9c b7 34 3f 0f 85 55 ff ff ff 0f 1f 44 00 00 e9 4b ff ff ff = <0f> 0b 5b 5d 41 5c 41 5d c3 cc cc cc cc 0f 1f 80 00 00 00 00 90 90 [ +0.000002] RSP: 0000:ffffc90004157d50 EFLAGS: 00010097 [ +0.000002] RAX: 0000000000000001 RBX: 0000000000000002 RCX: 00000000= 00000000 [ +0.000002] RDX: 0000000000000000 RSI: 0000000000000002 RDI: ffff8882= d65d0900 [ +0.000002] RBP: 0000000000000000 R08: 0000000000000001 R09: 00000000= 00000001 [ +0.000001] R10: 00000000000000ff R11: ffff88814d0155a0 R12: ffff8882= d65d0900 [ +0.000002] R13: 0000000000000000 R14: ffff8881002d2800 R15: 00000000= 000000d0 [ +0.000002] FS: 0000000000000000(0000) GS:ffff88846f800000(0000) knl= GS:0000000000000000 [ +0.000003] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ +0.000002] CR2: 00007f2e8c10c880 CR3: 0000000385b66005 CR4: 00000000= 000606f0 [ +0.000002] Call Trace: [ +0.000001] [ +0.000001] ? __ieee80211_stop_queue+0xcc/0xe0 [mac80211] [ +0.000075] ? __warn+0x81/0x130 [ +0.000004] ? __ieee80211_stop_queue+0xcc/0xe0 [mac80211] [ +0.000075] ? report_bug+0x171/0x1a0 [ +0.000005] ? handle_bug+0x41/0x70 [ +0.000003] ? exc_invalid_op+0x17/0x70 [ +0.000004] ? asm_exc_invalid_op+0x1a/0x20 [ +0.000004] ? __ieee80211_stop_queue+0xcc/0xe0 [mac80211] [ +0.000076] ieee80211_stop_queue+0x36/0x50 [mac80211] [ +0.000077] b43_dma_tx+0x550/0x780 [b43] [ +0.000023] b43_tx_work+0x90/0x130 [b43] [ +0.000018] process_one_work+0x174/0x340 [ +0.000003] worker_thread+0x27b/0x3a0 [ +0.000004] ? __pfx_worker_thread+0x10/0x10 [ +0.000002] kthread+0xe8/0x120 [ +0.000003] ? __pfx_kthread+0x10/0x10 [ +0.000004] ret_from_fork+0x34/0x50 [ +0.000002] ? __pfx_kthread+0x10/0x10 [ +0.000003] ret_from_fork_asm+0x1b/0x30 [ +0.000006] [ +0.000001] ---[ end trace 0000000000000000 ]--- Fixes: e6f5b934fba8 ("b43: Add QOS support") Signed-off-by: Rahul Rameshbabu Reviewed-by: Julian Calaby Signed-off-by: Kalle Valo Link: https://msgid.link/20231231050300.122806-2-sergeantsagara@protonmail.= com Signed-off-by: Sasha Levin --- drivers/net/wireless/broadcom/b43/b43.h | 16 ++++++++++++++++ drivers/net/wireless/broadcom/b43/dma.c | 4 ++-- 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/drivers/net/wireless/broadcom/b43/b43.h b/drivers/net/wireless= /broadcom/b43/b43.h index 67b4bac048e58..c0d8fc0b22fb2 100644 --- a/drivers/net/wireless/broadcom/b43/b43.h +++ b/drivers/net/wireless/broadcom/b43/b43.h @@ -1082,6 +1082,22 @@ static inline bool b43_using_pio_transfers(struct b4= 3_wldev *dev) return dev->__using_pio_transfers; } =20 +static inline void b43_wake_queue(struct b43_wldev *dev, int queue_prio) +{ + if (dev->qos_enabled) + ieee80211_wake_queue(dev->wl->hw, queue_prio); + else + ieee80211_wake_queue(dev->wl->hw, 0); +} + +static inline void b43_stop_queue(struct b43_wldev *dev, int queue_prio) +{ + if (dev->qos_enabled) + ieee80211_stop_queue(dev->wl->hw, queue_prio); + else + ieee80211_stop_queue(dev->wl->hw, 0); +} + /* Message printing */ __printf(2, 3) void b43info(struct b43_wl *wl, const char *fmt, ...); __printf(2, 3) void b43err(struct b43_wl *wl, const char *fmt, ...); diff --git a/drivers/net/wireless/broadcom/b43/dma.c b/drivers/net/wireless= /broadcom/b43/dma.c index ca671fc13116f..19624133b64ad 100644 --- a/drivers/net/wireless/broadcom/b43/dma.c +++ b/drivers/net/wireless/broadcom/b43/dma.c @@ -1399,7 +1399,7 @@ int b43_dma_tx(struct b43_wldev *dev, struct sk_buff = *skb) should_inject_overflow(ring)) { /* This TX ring is full. */ unsigned int skb_mapping =3D skb_get_queue_mapping(skb); - ieee80211_stop_queue(dev->wl->hw, skb_mapping); + b43_stop_queue(dev, skb_mapping); dev->wl->tx_queue_stopped[skb_mapping] =3D true; ring->stopped =3D true; if (b43_debug(dev, B43_DBG_DMAVERBOSE)) { @@ -1570,7 +1570,7 @@ void b43_dma_handle_txstatus(struct b43_wldev *dev, } else { /* If the driver queue is running wake the corresponding * mac80211 queue. */ - ieee80211_wake_queue(dev->wl->hw, ring->queue_prio); + b43_wake_queue(dev, ring->queue_prio); if (b43_debug(dev, B43_DBG_DMAVERBOSE)) { b43dbg(dev->wl, "Woke up TX ring %d\n", ring->index); } --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 8025828890E; Sun, 24 Mar 2024 23:47:11 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324032; cv=none; b=Ju5Hc4VkuOKvYEcug6n6AKWvX5kY4W1/B53/iO4NiY2hMZi/VW0N2XkKUkV3Uu3vfz9HjGjvzyYgarxd5l0EjfvvEBfME3udwpQkKGuDP9DzJJwYju4duWg2je4PVhsfcqz6cIw5WJni83G3uczjCrc5TXw9Oy/mrGUYLt6hGis= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324032; c=relaxed/simple; bh=N/MEiHXUbpLsn9IOTfeGvFEsEm35rJQsD7nKOe2gkXk=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=aUcUmE0g5MMdKVCOiXqq87CseyEOFCmIhrrCgDAAgLt5zKZJi7OI1nc/R6aQiWNMOSRBKm7dfV2a8s2hVgVLCB72l6zpnDgOssS9SHeTtPWpQ3Gx4Cw67QYglcL7MbXLeuDEyYCH4M7T9ebgvJtelkV4+1bM5F93SWzqys6CaIo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=ZwvIJolV; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="ZwvIJolV" Received: by smtp.kernel.org (Postfix) with ESMTPSA id A87BEC433C7; Sun, 24 Mar 2024 23:47:10 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324031; bh=N/MEiHXUbpLsn9IOTfeGvFEsEm35rJQsD7nKOe2gkXk=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=ZwvIJolV80Op+a/leleQn8RpFGoyyLt2dGnGVo9K2uKBaoRc3aHXp1oDRJsUS8R4o tLfMGfclj0LQXe75+HD454PIOy6WlM6vyfO+lIRyojmjnxoBHF3HNSMb0wIwoRv367 aqnueACxUKQ8qGtwBsPiLbUNx82EZJZ0BKmuKUU8Y8u/ADzPfuoxVcW0KgFk5dueda 1s2N6FbmX/jdc8xQXcmDEk47CCZwHIyQ9vTghsHFWj5fMtGVTJq8U1bSHrk+jChr7P s0WlEg1Kj+0d64SHy8RLimj4xaWpG1ZH2zh4WAZkpBqvdDKHQzVddqAOB8C015uw9H U0LZP9iH3OiKg== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Rahul Rameshbabu , Julian Calaby , Kalle Valo , Sasha Levin Subject: [PATCH 5.4 032/183] wifi: b43: Stop/wake correct queue in PIO Tx path when QoS is disabled Date: Sun, 24 Mar 2024 19:44:05 -0400 Message-ID: <20240324234638.1355609-33-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Rahul Rameshbabu [ Upstream commit 77135a38f6c2f950d2306ac3d37cbb407e6243f2 ] When QoS is disabled, the queue priority value will not map to the correct ieee80211 queue since there is only one queue. Stop/wake queue 0 when QoS is disabled to prevent trying to stop/wake a non-existent queue and failing to stop/wake the actual queue instantiated. Fixes: 5100d5ac81b9 ("b43: Add PIO support for PCMCIA devices") Signed-off-by: Rahul Rameshbabu Reviewed-by: Julian Calaby Signed-off-by: Kalle Valo Link: https://msgid.link/20231231050300.122806-3-sergeantsagara@protonmail.= com Signed-off-by: Sasha Levin --- drivers/net/wireless/broadcom/b43/pio.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/net/wireless/broadcom/b43/pio.c b/drivers/net/wireless= /broadcom/b43/pio.c index 69f8b46c90157..468fd647d0a08 100644 --- a/drivers/net/wireless/broadcom/b43/pio.c +++ b/drivers/net/wireless/broadcom/b43/pio.c @@ -525,7 +525,7 @@ int b43_pio_tx(struct b43_wldev *dev, struct sk_buff *s= kb) if (total_len > (q->buffer_size - q->buffer_used)) { /* Not enough memory on the queue. */ err =3D -EBUSY; - ieee80211_stop_queue(dev->wl->hw, skb_get_queue_mapping(skb)); + b43_stop_queue(dev, skb_get_queue_mapping(skb)); q->stopped =3D true; goto out; } @@ -552,7 +552,7 @@ int b43_pio_tx(struct b43_wldev *dev, struct sk_buff *s= kb) if (((q->buffer_size - q->buffer_used) < roundup(2 + 2 + 6, 4)) || (q->free_packet_slots =3D=3D 0)) { /* The queue is full. */ - ieee80211_stop_queue(dev->wl->hw, skb_get_queue_mapping(skb)); + b43_stop_queue(dev, skb_get_queue_mapping(skb)); q->stopped =3D true; } =20 @@ -587,7 +587,7 @@ void b43_pio_handle_txstatus(struct b43_wldev *dev, list_add(&pack->list, &q->packets_list); =20 if (q->stopped) { - ieee80211_wake_queue(dev->wl->hw, q->queue_prio); + b43_wake_queue(dev, q->queue_prio); q->stopped =3D false; } } --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 677D9288917; Sun, 24 Mar 2024 23:47:12 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324033; cv=none; b=T/dYX6sm2dBNvmGhFqqv7AtFDACpArmwYFKB1uT+RWZYn060LoVbPtFv6hEjFdO919X/JpmGwfkLgLHQhw1kyZpep6q04/HPj2InrgY/rbTAm2Lhq9r5q+Xeq/o9QuCgyeDft1S+eBs8gV77Y586ohPhklqnxMK4bSWsb7w5A/w= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324033; c=relaxed/simple; bh=1DPcpeBDnF2xH8ZQfHSXct1kQm/M4ZIPnjfT2U2xWzI=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=DK+IoucNyX1OSaAC+LljtWc6JaJMHYLzm4hs+uoqxp1zer9ea5NqD0nhAKqxDDLkjzjXCoj+WiSBFyhccLsNhwfKAcYn+uxAyrlWr1OzCIOTrGBokvmFKy/lr7GGcm8X4oXsREMfW/xbfSdbqGq0LkagdsorbctjO4CH/jr7VQs= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=OhVzIajT; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="OhVzIajT" Received: by smtp.kernel.org (Postfix) with ESMTPSA id A47F9C43394; Sun, 24 Mar 2024 23:47:11 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324032; bh=1DPcpeBDnF2xH8ZQfHSXct1kQm/M4ZIPnjfT2U2xWzI=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=OhVzIajT+tK6k/lrs3Xu69FFBLd49nRLp9ND6C7M6WnEzcNjBDfA8ZL/TUW77rcfS vvFjNhz2CwoahQRmyvenRP4eCAzLg5DGGSwvduHjTApUEV5F3ULSy3SvesHkQP6HLq eBHYlweYuJChBPLI5MMlJcLW1Lcl4qKb+R7heXDT50lOyEDEW6f4OEwSnU+9ppykOz CBbbZ9EZgijLfF8TBWt3DctIfqH2Cn9opadaKclD8dlBaAvxCuWprlnZB/h4+sYWol Ivyr+4XtVmljRtgzWf0+ggiKh+pOKTk+it6j4c90wTyXtPJPj9og/jUj0gT5ct20Ej 664HdCBa6xRDA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Saurav Girepunje , Kalle Valo , Sasha Levin Subject: [PATCH 5.4 033/183] b43: main: Fix use true/false for bool type Date: Sun, 24 Mar 2024 19:44:06 -0400 Message-ID: <20240324234638.1355609-34-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Saurav Girepunje [ Upstream commit 6db774c1725059f98e4fce97f878688248584be5 ] use true/false on bool type variable assignment. Signed-off-by: Saurav Girepunje Signed-off-by: Kalle Valo Stable-dep-of: 581c8967d66c ("wifi: b43: Stop correct queue in DMA worker w= hen QoS is disabled") Signed-off-by: Sasha Levin --- drivers/net/wireless/broadcom/b43/main.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/net/wireless/broadcom/b43/main.c b/drivers/net/wireles= s/broadcom/b43/main.c index 3432dfe1ddb47..3ad94dad2d89b 100644 --- a/drivers/net/wireless/broadcom/b43/main.c +++ b/drivers/net/wireless/broadcom/b43/main.c @@ -3600,7 +3600,7 @@ static void b43_tx_work(struct work_struct *work) else err =3D b43_dma_tx(dev, skb); if (err =3D=3D -ENOSPC) { - wl->tx_queue_stopped[queue_num] =3D 1; + wl->tx_queue_stopped[queue_num] =3D true; ieee80211_stop_queue(wl->hw, queue_num); skb_queue_head(&wl->tx_queue[queue_num], skb); break; @@ -3611,7 +3611,7 @@ static void b43_tx_work(struct work_struct *work) } =20 if (!err) - wl->tx_queue_stopped[queue_num] =3D 0; + wl->tx_queue_stopped[queue_num] =3D false; } =20 #if B43_DEBUG @@ -5603,7 +5603,7 @@ static struct b43_wl *b43_wireless_init(struct b43_bu= s_dev *dev) /* Initialize queues and flags. */ for (queue_num =3D 0; queue_num < B43_QOS_QUEUE_NUM; queue_num++) { skb_queue_head_init(&wl->tx_queue[queue_num]); - wl->tx_queue_stopped[queue_num] =3D 0; + wl->tx_queue_stopped[queue_num] =3D false; } =20 snprintf(chip_name, ARRAY_SIZE(chip_name), --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 63F0E288916; Sun, 24 Mar 2024 23:47:13 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324033; cv=none; b=hSyl6rhkDjiJi1LeKC1gzXXCGRExAFuRjWlMba3Vii+9kqYtnZhZCwIEjsEDZAq5aEWOBfXH2hBOTJNH/dw7NXaiial1WYCcOKhvVUMOXpSmFd8ZWBEmzRdoiZRhCSrrW1yIwe5vfF6llV0AOhAA5A9b4zhyhlDZnVgat7s+uZw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324033; c=relaxed/simple; bh=YeEcgtNG14s91o5QteY4cf13XJRDzXh4Bs56jSDt/XY=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=NoHMAPuYC1juMFl/9Qo5cEVFra2c0OEIYx8bdUb53K80HhAUoU6l7IeLiwhFE3ygXobN84Y2PzsvD/w7fXp7s6csYuc9w6c0HbSZNs4VH7uvdPahC5cCcfvTFRRQ3MaR9j/OmoZwcYyk4l573x5DmqbbYohN2Wc7uyzuflbgXtk= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=dG9wXmMx; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="dG9wXmMx" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 8B070C43390; Sun, 24 Mar 2024 23:47:12 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324033; bh=YeEcgtNG14s91o5QteY4cf13XJRDzXh4Bs56jSDt/XY=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=dG9wXmMx2AqCDKoTjDowH7XiBpTC/G+UQ7Ilmw7GJH8gLS6k+CI905qkJwxoTy8R/ QAitUYuNPnJqXTIaqiG94296DhCZUJf38J9j9unRqNWXbcPR4vhjPgxUy/5XNO10Is 7cgnW5YRk63O7NjbB07V47Ymzt2i3EKK3ko/xYidLQ3pi+CNgId2synBwfLVkUciHt fL/kLHWYvr3jXoXYcuAjPHkuJ9pG77fv3ENETBQxpeq/HNiGEH5zfNJ7tnGxDhA2m/ l9cusKiVJoRDrTzs18gu5Ax5VYroRP4uN2Oo18ApRMYxqX7fn9Al4w0VjWIbv1YHvY hYQqfubEo+gHA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Rahul Rameshbabu , Julian Calaby , Kalle Valo , Sasha Levin Subject: [PATCH 5.4 034/183] wifi: b43: Stop correct queue in DMA worker when QoS is disabled Date: Sun, 24 Mar 2024 19:44:07 -0400 Message-ID: <20240324234638.1355609-35-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Rahul Rameshbabu [ Upstream commit 581c8967d66c4961076dbbee356834e9c6777184 ] When QoS is disabled, the queue priority value will not map to the correct ieee80211 queue since there is only one queue. Stop queue 0 when QoS is disabled to prevent trying to stop a non-existent queue and failing to stop the actual queue instantiated. Fixes: bad691946966 ("b43: avoid packet losses in the dma worker code.") Signed-off-by: Rahul Rameshbabu Reviewed-by: Julian Calaby Signed-off-by: Kalle Valo Link: https://msgid.link/20231231050300.122806-4-sergeantsagara@protonmail.= com Signed-off-by: Sasha Levin --- drivers/net/wireless/broadcom/b43/main.c | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/drivers/net/wireless/broadcom/b43/main.c b/drivers/net/wireles= s/broadcom/b43/main.c index 3ad94dad2d89b..b4701846caf3e 100644 --- a/drivers/net/wireless/broadcom/b43/main.c +++ b/drivers/net/wireless/broadcom/b43/main.c @@ -3601,7 +3601,7 @@ static void b43_tx_work(struct work_struct *work) err =3D b43_dma_tx(dev, skb); if (err =3D=3D -ENOSPC) { wl->tx_queue_stopped[queue_num] =3D true; - ieee80211_stop_queue(wl->hw, queue_num); + b43_stop_queue(dev, queue_num); skb_queue_head(&wl->tx_queue[queue_num], skb); break; } @@ -3625,6 +3625,7 @@ static void b43_op_tx(struct ieee80211_hw *hw, struct sk_buff *skb) { struct b43_wl *wl =3D hw_to_b43_wl(hw); + u16 skb_queue_mapping; =20 if (unlikely(skb->len < 2 + 2 + 6)) { /* Too short, this can't be a valid frame. */ @@ -3633,12 +3634,12 @@ static void b43_op_tx(struct ieee80211_hw *hw, } B43_WARN_ON(skb_shinfo(skb)->nr_frags); =20 - skb_queue_tail(&wl->tx_queue[skb->queue_mapping], skb); - if (!wl->tx_queue_stopped[skb->queue_mapping]) { + skb_queue_mapping =3D skb_get_queue_mapping(skb); + skb_queue_tail(&wl->tx_queue[skb_queue_mapping], skb); + if (!wl->tx_queue_stopped[skb_queue_mapping]) ieee80211_queue_work(wl->hw, &wl->tx_work); - } else { - ieee80211_stop_queue(wl->hw, skb->queue_mapping); - } + else + b43_stop_queue(wl->current_dev, skb_queue_mapping); } =20 static void b43_qos_params_upload(struct b43_wldev *dev, --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 5DF8F1802C7; Sun, 24 Mar 2024 23:47:14 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324035; cv=none; b=Fa5Wd9aXo5lpx8ufKtI7ro/UXX+2B+DqUI1tBzEt4gsbQEzt6sxAgWtMO+cpPoj1PHiypW5l1DX12EMjXedMzqmzTaGL6DxclTzngXzdCVA7UcmWTva34zDE4/fYJiIe0dDIFHUj0LcD8/40H9+bcDfsROFruiccCdW9SkYO7oU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324035; c=relaxed/simple; bh=yVN4Xq1hPzjmTAe9lqpsrKxthUFKTj3EMUvWmyoZXkw=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=X3w409eGH2OSfFRfvv958nEkv1inkU1cM1/FQvnsEl3gcP7Szx9Y0xZLxS1LLTKnCCtzvJQH0y+VQzgCkBJDch8TjyakuCX//LUUC55aBKEM7GvcI+gSTzepz4EQlwrP0sSTyNdEpR2Wi3f15cryRmlpb2IikugO9Af2yfUghBA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=DnEIyoi1; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="DnEIyoi1" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 87894C433F1; Sun, 24 Mar 2024 23:47:13 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324034; bh=yVN4Xq1hPzjmTAe9lqpsrKxthUFKTj3EMUvWmyoZXkw=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=DnEIyoi1K6F3gyc7vwA7MKdupyhi7ti/3FQVZ366SkjyU9/U2AP5rN5WVG4QK09R3 UKirrFNyT3tdQZHTJ0jrIZKQxJg4N1OCZeoYIhRlqp+TiSAQmLywdWOWkQo5N2UGU3 vsCyQQM+kZzxYvbCsc8dhY5+oeln8bvISLQKgT1ocU0kPsVFh9Eq8tS6l+l5ZHoSPU 63tjcTjbc1Zggp7C4xq+wWjypxUP5pRdj7p6M9XSMvZplkqNdFb8pU+AsulPpvNThh ZKb+YW24SFK4Yb3GRvDWl2QD1v6Un4tIkXTme0h9pjrOsIPDXTt+NXFzqiJifPlyO8 dgPUd/WU0lYyw== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Rahul Rameshbabu , Julian Calaby , Kalle Valo , Sasha Levin Subject: [PATCH 5.4 035/183] wifi: b43: Disable QoS for bcm4331 Date: Sun, 24 Mar 2024 19:44:08 -0400 Message-ID: <20240324234638.1355609-36-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Rahul Rameshbabu [ Upstream commit 09795bded2e725443fe4a4803cae2079cdaf7b26 ] bcm4331 seems to not function correctly with QoS support. This may be due to issues with currently available firmware or potentially a device specific issue. When queues that are not of the default "best effort" priority are selected, traffic appears to not transmit out of the hardware while no errors are returned. This behavior is present among all the other priority queues: video, voice, and background. While this can be worked around by setting a kernel parameter, the default behavior is problematic for most users and may be difficult to debug. This patch offers a working out-of-box experience for bcm4331 users. Log of the issue (using ssh low-priority traffic as an example): ssh -T -vvvv git@github.com OpenSSH_9.6p1, OpenSSL 3.0.12 24 Oct 2023 debug1: Reading configuration data /etc/ssh/ssh_config debug2: checking match for 'host * exec "/nix/store/q1c2flcykgr4wwg5a6h= 450hxbk4ch589-bash-5.2-p15/bin/bash -c '/nix/store/c015armnkhr6v18za0rypm7s= h1i8js8w-gnupg-2.4.1/bin/gpg-connect-agent --quiet updatestartuptty /bye >/= dev/null 2>&1'"' host github.com originally github.com debug3: /etc/ssh/ssh_config line 5: matched 'host "github.com"' debug1: Executing command: '/nix/store/q1c2flcykgr4wwg5a6h450hxbk4ch589= -bash-5.2-p15/bin/bash -c '/nix/store/c015armnkhr6v18za0rypm7sh1i8js8w-gnup= g-2.4.1/bin/gpg-connect-agent --quiet updatestartuptty /bye >/dev/null 2>&1= '' debug3: command returned status 0 debug3: /etc/ssh/ssh_config line 5: matched 'exec "/nix/store/q1c2flcyk= gr4wwg5a6h450hxbk4ch589-bash-5.2-p15/bin/bash -c '/nix/store/c015armnkhr6v1= 8za0r"' debug2: match found debug1: /etc/ssh/ssh_config line 9: Applying options for * debug3: expanded UserKnownHostsFile '~/.ssh/known_hosts' -> '/home/bina= ry-eater/.ssh/known_hosts' debug3: expanded UserKnownHostsFile '~/.ssh/known_hosts2' -> '/home/bin= ary-eater/.ssh/known_hosts2' debug2: resolving "github.com" port 22 debug3: resolve_host: lookup github.com:22 debug3: channel_clear_timeouts: clearing debug3: ssh_connect_direct: entering debug1: Connecting to github.com [192.30.255.113] port 22. debug3: set_sock_tos: set socket 3 IP_TOS 0x48 Fixes: e6f5b934fba8 ("b43: Add QOS support") Signed-off-by: Rahul Rameshbabu Reviewed-by: Julian Calaby Signed-off-by: Kalle Valo Link: https://msgid.link/20231231050300.122806-5-sergeantsagara@protonmail.= com Signed-off-by: Sasha Levin --- drivers/net/wireless/broadcom/b43/main.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/net/wireless/broadcom/b43/main.c b/drivers/net/wireles= s/broadcom/b43/main.c index b4701846caf3e..e466324a1fd24 100644 --- a/drivers/net/wireless/broadcom/b43/main.c +++ b/drivers/net/wireless/broadcom/b43/main.c @@ -2585,7 +2585,8 @@ static void b43_request_firmware(struct work_struct *= work) =20 start_ieee80211: wl->hw->queues =3D B43_QOS_QUEUE_NUM; - if (!modparam_qos || dev->fw.opensource) + if (!modparam_qos || dev->fw.opensource || + dev->dev->chip_id =3D=3D BCMA_CHIP_ID_BCM4331) wl->hw->queues =3D 1; =20 err =3D ieee80211_register_hw(wl->hw); --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 48F9F1802CE; Sun, 24 Mar 2024 23:47:15 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324036; cv=none; b=Y6gWrDa9+wEJYzLrESmloKhP1btuxQ9kQzM8o/J5rkMbi6ObfHB6CDgN6hM0XXXk0ZLmpwxnFJ/3ngiTCmq+bNX3buPcIOxx4JIYqH8YpBXHv74lU9M1ibzwK168SDjJX61d2tjxc5RajlvNPxZXtSp4YBWd0mhwCOS7psXGXF0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324036; c=relaxed/simple; bh=myX2+tAmhFIBAAXFLdRpZctMsZOAIV46IPbeD/+7xpI=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=WbT/wMY/wfJggoLhsbzmgkeu4hCqkoZL+X5zFN/y+0UlohTPor+EWnpm0VL7tAuT/KkTk0oTTjwWJ6hGZzsoM9JM6JoFUEQXAOaMhbfdCNgk9m8o90eYYi68qpiWSO8YSH1bCq8Z4dxgzM94OVXUJUAZ5ztiwdxLQSIbr5BOAs0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=FJrARb+f; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="FJrARb+f" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 82A62C433C7; Sun, 24 Mar 2024 23:47:14 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324035; bh=myX2+tAmhFIBAAXFLdRpZctMsZOAIV46IPbeD/+7xpI=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=FJrARb+fNEBtB+kl5yCef2xPKCDyb2ROGPsP1SgB/VZOa4KY3+5DwukIN0PaVO5i7 UYGa6cCum5q0sf/TgWEy09LcTQJ+H0Tj17Db/yRhryWDKD94gKvARytQdJobTXf3lh K2oq9U3JgVd+MWOb1I7BJ+1oy9Bi8PBD+GKHzeIKhaIXbkSSS+JSdUFuBU2oA8m3s7 +/gkkxYe8j2233ahCJuO+HCj80pApDUuvNPbttptrEp1PSEb+f+V7Jmmrzz19Hlg6p kp4hjD7x7NdgWU7oaqaUCKRGhqWH6+jxWMPfwtw63psjlnveGiexHv60Mn2AK2q/L+ jPpiDtK8AWPZA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: =?UTF-8?q?Alexis=20Lothor=C3=A9?= , Kalle Valo , Sasha Levin Subject: [PATCH 5.4 036/183] wifi: wilc1000: fix declarations ordering Date: Sun, 24 Mar 2024 19:44:09 -0400 Message-ID: <20240324234638.1355609-37-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable From: Alexis Lothor=C3=A9 [ Upstream commit 535733e90e5d8912ebeccebb05b354a2d06ff459 ] Reorder parameters declaration in wilc_parse_join_bss_param to enforce reverse christmas tree Signed-off-by: Alexis Lothor=C3=A9 Signed-off-by: Kalle Valo Link: https://msgid.link/20240105075733.36331-2-alexis.lothore@bootlin.com Stable-dep-of: 205c50306acf ("wifi: wilc1000: fix RCU usage in connect path= ") Signed-off-by: Sasha Levin --- drivers/staging/wilc1000/wilc_hif.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/staging/wilc1000/wilc_hif.c b/drivers/staging/wilc1000= /wilc_hif.c index 221e3d93db148..b9c21315a403a 100644 --- a/drivers/staging/wilc1000/wilc_hif.c +++ b/drivers/staging/wilc1000/wilc_hif.c @@ -441,13 +441,13 @@ static void handle_connect_timeout(struct work_struct= *work) void *wilc_parse_join_bss_param(struct cfg80211_bss *bss, struct cfg80211_crypto_settings *crypto) { - struct wilc_join_bss_param *param; - struct ieee80211_p2p_noa_attr noa_attr; - u8 rates_len =3D 0; + const struct cfg80211_bss_ies *ies =3D rcu_dereference(bss->ies); const u8 *tim_elm, *ssid_elm, *rates_ie, *supp_rates_ie; const u8 *ht_ie, *wpa_ie, *wmm_ie, *rsn_ie; + struct ieee80211_p2p_noa_attr noa_attr; + struct wilc_join_bss_param *param; + u8 rates_len =3D 0; int ret; - const struct cfg80211_bss_ies *ies =3D rcu_dereference(bss->ies); =20 param =3D kzalloc(sizeof(*param), GFP_KERNEL); if (!param) --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 2CDEE224A23; Sun, 24 Mar 2024 23:47:16 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324037; cv=none; b=kN0MAPvnd+02nSC/yiW0eA0f92YoIyfxhmv3/DfbiwoptIR47+Ofn6g8s+IrAdUtRxzTMyPWMAo8sL7vscT/RxecCFIisPYU3G4TBQOm59fHI3l1buboK/KarGEZ3OZxM+wscfkbZOEBkb7DkvlgpnkmZkB7XD/jxSCL8iGFtb0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324037; c=relaxed/simple; bh=7maQi5aK9NGVnIgohlxBT5F5r5LlybeGvHB2DotLJnc=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=niWHvldVI33d3BEQcOVMX5vKVDba7hM36zgygm+wujucJDSAHnG7Ifej1/alJgV226mnHw343sdB8veB6++P0RXnEeADUlbuUkg0OCXt2G9muXITx5GPqqTiEnda3H1wCBEjJR4dJlryP/ZD6Kjo4iGNfpy3gJvMeM88I7sWfBI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=BcPt0JHL; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="BcPt0JHL" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 6AE74C43390; Sun, 24 Mar 2024 23:47:15 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324036; bh=7maQi5aK9NGVnIgohlxBT5F5r5LlybeGvHB2DotLJnc=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=BcPt0JHL5j5V3M8bn9cKjJOA++yX3/r4reHZn03dkyGP7Pe/m+JzetaUU7BAAFlxS Z8Dx7V9BKeF/z5Qb7rf8NFhmLp+vzBArTjVe6Ydc/MxveTAa4nFnQsOmXx98JefiIR eqz+L7RKajv02Qcvk3zlYmix5dyVKCGlwh0K+QQ2RRtbs0k+KTDP4fCYcc5iJNr5eG /AomP7P+U7mQpSbUh/9K6ybTt+9dwh81oh9xmvSza8GxPtEySJA2Hu7D/sSwfpbqYn vRE575bnwKlTjjTK/slpGaYKiIPT7AUtqIUXt/HdADc2cPcP61l1vOjYiequFIC7E/ 3VUDNFVhj9M2A== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: =?UTF-8?q?Alexis=20Lothor=C3=A9?= , Kalle Valo , Sasha Levin Subject: [PATCH 5.4 037/183] wifi: wilc1000: fix RCU usage in connect path Date: Sun, 24 Mar 2024 19:44:10 -0400 Message-ID: <20240324234638.1355609-38-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable From: Alexis Lothor=C3=A9 [ Upstream commit 205c50306acf58a335eb19fa84e40140f4fe814f ] With lockdep enabled, calls to the connect function from cfg802.11 layer lead to the following warning: =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D WARNING: suspicious RCU usage 6.7.0-rc1-wt+ #333 Not tainted ----------------------------- drivers/net/wireless/microchip/wilc1000/hif.c:386 suspicious rcu_dereference_check() usage! [...] stack backtrace: CPU: 0 PID: 100 Comm: wpa_supplicant Not tainted 6.7.0-rc1-wt+ #333 Hardware name: Atmel SAMA5 unwind_backtrace from show_stack+0x18/0x1c show_stack from dump_stack_lvl+0x34/0x48 dump_stack_lvl from wilc_parse_join_bss_param+0x7dc/0x7f4 wilc_parse_join_bss_param from connect+0x2c4/0x648 connect from cfg80211_connect+0x30c/0xb74 cfg80211_connect from nl80211_connect+0x860/0xa94 nl80211_connect from genl_rcv_msg+0x3fc/0x59c genl_rcv_msg from netlink_rcv_skb+0xd0/0x1f8 netlink_rcv_skb from genl_rcv+0x2c/0x3c genl_rcv from netlink_unicast+0x3b0/0x550 netlink_unicast from netlink_sendmsg+0x368/0x688 netlink_sendmsg from ____sys_sendmsg+0x190/0x430 ____sys_sendmsg from ___sys_sendmsg+0x110/0x158 ___sys_sendmsg from sys_sendmsg+0xe8/0x150 sys_sendmsg from ret_fast_syscall+0x0/0x1c This warning is emitted because in the connect path, when trying to parse target BSS parameters, we dereference a RCU pointer whithout being in RCU critical section. Fix RCU dereference usage by moving it to a RCU read critical section. To avoid wrapping the whole wilc_parse_join_bss_param under the critical section, just use the critical section to copy ies data Fixes: c460495ee072 ("staging: wilc1000: fix incorrent type in initializer") Signed-off-by: Alexis Lothor=C3=A9 Signed-off-by: Kalle Valo Link: https://msgid.link/20240105075733.36331-3-alexis.lothore@bootlin.com Signed-off-by: Sasha Levin --- drivers/staging/wilc1000/wilc_hif.c | 36 +++++++++++++++++++---------- 1 file changed, 24 insertions(+), 12 deletions(-) diff --git a/drivers/staging/wilc1000/wilc_hif.c b/drivers/staging/wilc1000= /wilc_hif.c index b9c21315a403a..22e02fd068b4d 100644 --- a/drivers/staging/wilc1000/wilc_hif.c +++ b/drivers/staging/wilc1000/wilc_hif.c @@ -441,38 +441,49 @@ static void handle_connect_timeout(struct work_struct= *work) void *wilc_parse_join_bss_param(struct cfg80211_bss *bss, struct cfg80211_crypto_settings *crypto) { - const struct cfg80211_bss_ies *ies =3D rcu_dereference(bss->ies); - const u8 *tim_elm, *ssid_elm, *rates_ie, *supp_rates_ie; + const u8 *ies_data, *tim_elm, *ssid_elm, *rates_ie, *supp_rates_ie; const u8 *ht_ie, *wpa_ie, *wmm_ie, *rsn_ie; struct ieee80211_p2p_noa_attr noa_attr; + const struct cfg80211_bss_ies *ies; struct wilc_join_bss_param *param; - u8 rates_len =3D 0; + u8 rates_len =3D 0, ies_len; int ret; =20 param =3D kzalloc(sizeof(*param), GFP_KERNEL); if (!param) return NULL; =20 + rcu_read_lock(); + ies =3D rcu_dereference(bss->ies); + ies_data =3D kmemdup(ies->data, ies->len, GFP_ATOMIC); + if (!ies_data) { + rcu_read_unlock(); + kfree(param); + return NULL; + } + ies_len =3D ies->len; + rcu_read_unlock(); + param->beacon_period =3D cpu_to_le16(bss->beacon_interval); param->cap_info =3D cpu_to_le16(bss->capability); param->bss_type =3D WILC_FW_BSS_TYPE_INFRA; param->ch =3D ieee80211_frequency_to_channel(bss->channel->center_freq); ether_addr_copy(param->bssid, bss->bssid); =20 - ssid_elm =3D cfg80211_find_ie(WLAN_EID_SSID, ies->data, ies->len); + ssid_elm =3D cfg80211_find_ie(WLAN_EID_SSID, ies_data, ies_len); if (ssid_elm) { if (ssid_elm[1] <=3D IEEE80211_MAX_SSID_LEN) memcpy(param->ssid, ssid_elm + 2, ssid_elm[1]); } =20 - tim_elm =3D cfg80211_find_ie(WLAN_EID_TIM, ies->data, ies->len); + tim_elm =3D cfg80211_find_ie(WLAN_EID_TIM, ies_data, ies_len); if (tim_elm && tim_elm[1] >=3D 2) param->dtim_period =3D tim_elm[3]; =20 memset(param->p_suites, 0xFF, 3); memset(param->akm_suites, 0xFF, 3); =20 - rates_ie =3D cfg80211_find_ie(WLAN_EID_SUPP_RATES, ies->data, ies->len); + rates_ie =3D cfg80211_find_ie(WLAN_EID_SUPP_RATES, ies_data, ies_len); if (rates_ie) { rates_len =3D rates_ie[1]; if (rates_len > WILC_MAX_RATES_SUPPORTED) @@ -483,7 +494,7 @@ void *wilc_parse_join_bss_param(struct cfg80211_bss *bs= s, =20 if (rates_len < WILC_MAX_RATES_SUPPORTED) { supp_rates_ie =3D cfg80211_find_ie(WLAN_EID_EXT_SUPP_RATES, - ies->data, ies->len); + ies_data, ies_len); if (supp_rates_ie) { u8 ext_rates =3D supp_rates_ie[1]; =20 @@ -498,11 +509,11 @@ void *wilc_parse_join_bss_param(struct cfg80211_bss *= bss, } } =20 - ht_ie =3D cfg80211_find_ie(WLAN_EID_HT_CAPABILITY, ies->data, ies->len); + ht_ie =3D cfg80211_find_ie(WLAN_EID_HT_CAPABILITY, ies_data, ies_len); if (ht_ie) param->ht_capable =3D true; =20 - ret =3D cfg80211_get_p2p_attr(ies->data, ies->len, + ret =3D cfg80211_get_p2p_attr(ies_data, ies_len, IEEE80211_P2P_ATTR_ABSENCE_NOTICE, (u8 *)&noa_attr, sizeof(noa_attr)); if (ret > 0) { @@ -526,7 +537,7 @@ void *wilc_parse_join_bss_param(struct cfg80211_bss *bs= s, } wmm_ie =3D cfg80211_find_vendor_ie(WLAN_OUI_MICROSOFT, WLAN_OUI_TYPE_MICROSOFT_WMM, - ies->data, ies->len); + ies_data, ies_len); if (wmm_ie) { struct ieee80211_wmm_param_ie *ie; =20 @@ -541,13 +552,13 @@ void *wilc_parse_join_bss_param(struct cfg80211_bss *= bss, =20 wpa_ie =3D cfg80211_find_vendor_ie(WLAN_OUI_MICROSOFT, WLAN_OUI_TYPE_MICROSOFT_WPA, - ies->data, ies->len); + ies_data, ies_len); if (wpa_ie) { param->mode_802_11i =3D 1; param->rsn_found =3D true; } =20 - rsn_ie =3D cfg80211_find_ie(WLAN_EID_RSN, ies->data, ies->len); + rsn_ie =3D cfg80211_find_ie(WLAN_EID_RSN, ies_data, ies_len); if (rsn_ie) { int offset =3D 8; =20 @@ -570,6 +581,7 @@ void *wilc_parse_join_bss_param(struct cfg80211_bss *bs= s, param->akm_suites[i] =3D crypto->akm_suites[i] & 0xFF; } =20 + kfree(ies_data); return (void *)param; } =20 --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 37A312892A5; Sun, 24 Mar 2024 23:47:17 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324038; cv=none; b=N8fjuiXMZz0i0zcMFpyBZAK0PbfwQ3sSZvrdVPJqFUkxHFOyJzBc52HWlFvJ1tnZqHrszXIPXfWB1QotxIhm9vctRvHB1kPt3Q9e+cAz6bQ7ZRbOZSuyCSKKrx8yjas/HG0EKF21vEI9htw4T3vB5d3LvKN4BjOAJy+99siEvxs= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324038; c=relaxed/simple; bh=C1jtr2IK9Bcqh0oulVRpOiJTkuNCJ2ncu/i7FKNApMQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=ks26+w3MWvrac0IgrSJlblRresBASEFj5AFXP8G6+xN8aYB4vw2xdMRXG9MDE5MoPGCGxZI2dTd8QIMEhR0Lm9Fdk31Qa+aKz/JnVcAVpCu/DKr6ySLFPVQv6kDcWpiUs6+yIEUPjhS7dyIEDmaAfZvNnA0SwBz1vsFhdMMN1pg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=gp2z/UI8; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="gp2z/UI8" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 533ABC433A6; Sun, 24 Mar 2024 23:47:16 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324037; bh=C1jtr2IK9Bcqh0oulVRpOiJTkuNCJ2ncu/i7FKNApMQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=gp2z/UI8RnVsRxexvLdvz1FriKi4Ys4ggGLh8ui9oMEKH5i43ypHtAYLWOjK0n5hq KfU6QNE+CUAj2qn+DBzfHR19uf1fxxUOcNlF1owhkAHJE4jqN8yO91qL4nUE8FVlAZ iA0W9A824RZZ7Jw7ic9FvQAWarOLUbvzxeHvWQyNs86mv+8uLpISDK1Qtk/XyuqLgj ouI2Kco/pq8gEh7o5oBp04ogS8bEEWmjlAH1uM4XqHOefnKiT5PM7wE8MPfQ2bmeDr cj7z7pJFgBefpyXng74ioGPwk9/7ykLibcmFmA6nQTS8X7RCULvNl9FmtPpyx6/p7H eVq2ZWufviivw== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Jinjie Ruan , Russell King , Kalle Valo , Sasha Levin Subject: [PATCH 5.4 038/183] wifi: mwifiex: debugfs: Drop unnecessary error check for debugfs_create_dir() Date: Sun, 24 Mar 2024 19:44:11 -0400 Message-ID: <20240324234638.1355609-39-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Jinjie Ruan [ Upstream commit 50180c7f8e3de7c2d87f619131776598fcb1478d ] debugfs_create_dir() returns ERR_PTR and never return NULL. As Russell suggested, this patch removes the error checking for debugfs_create_dir(). This is because the DebugFS kernel API is developed in a way that the caller can safely ignore the errors that occur during the creation of DebugFS nodes. The debugfs APIs have a IS_ERR() judge in start_creating() which can handle it gracefully. So these checks are unnecessary. Fixes: 5e6e3a92b9a4 ("wireless: mwifiex: initial commit for Marvell mwifiex= driver") Signed-off-by: Jinjie Ruan Suggested-by: Russell King (Oracle) Signed-off-by: Kalle Valo Link: https://msgid.link/20230903030216.1509013-3-ruanjinjie@huawei.com Signed-off-by: Sasha Levin --- drivers/net/wireless/marvell/mwifiex/debugfs.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/drivers/net/wireless/marvell/mwifiex/debugfs.c b/drivers/net/w= ireless/marvell/mwifiex/debugfs.c index e4cb7ce1c8b85..a6f4655b301d6 100644 --- a/drivers/net/wireless/marvell/mwifiex/debugfs.c +++ b/drivers/net/wireless/marvell/mwifiex/debugfs.c @@ -976,9 +976,6 @@ mwifiex_dev_debugfs_init(struct mwifiex_private *priv) priv->dfs_dev_dir =3D debugfs_create_dir(priv->netdev->name, mwifiex_dfs_dir); =20 - if (!priv->dfs_dev_dir) - return; - MWIFIEX_DFS_ADD_FILE(info); MWIFIEX_DFS_ADD_FILE(debug); MWIFIEX_DFS_ADD_FILE(getlog); --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 6F2C62892B5; Sun, 24 Mar 2024 23:47:18 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324039; cv=none; b=j6rqFm1/VNSEcuQznymoUary0AWr0RRrE20eozJFK7fmCy7vNvibMGPq6TnKlzCC75qzonX1GPO1ct4ehnPD/NllS2yAScsNcSYsuJ3M4YJYaK/eeACv7U+BU5y5jX/+vQTEP6rrfMkjpPCOfYoTreniKXxRIfdBpDrZX12FltQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324039; c=relaxed/simple; bh=McbMIX7Ej9DjfcJa/tptOsZymK3j6hDK6cy4Oi3Af4U=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=U/ZsX0KeSA1d8AUyWRV+dQTj6Jtwl8q8qz5jdjszY/1PwVnJBt8XCL9jO57e5RRdTdmmlnNFVs1N/6I//XsRdspiBJtmcCrZ0CuTkzMfxgTs3cRI0pE6jL29dr9v8PpzdL6az0eopMNOLpVrMoCzccHmRMzaF5b/2FSIummz96M= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=DWcJsiUe; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="DWcJsiUe" Received: by smtp.kernel.org (Postfix) with ESMTPSA id A827EC433F1; Sun, 24 Mar 2024 23:47:17 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324038; bh=McbMIX7Ej9DjfcJa/tptOsZymK3j6hDK6cy4Oi3Af4U=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=DWcJsiUegsiav9ffKlKC4Vo2HbRllesIICnd4bTlAAxgOWmzP0Fqeh/C8gsMyDLgC FmdHIkhQf6EwxXrvuxpNMeW8O5nmfsnuR9C2Q7I/9HYBAdzqoGb78ffRSVXsRWPxs1 00N71aUfzH36Y6B2Stlltw95gm1DzvLuNM5666xgdldDxpKxLbeC1IOq+bOV+Oqoi6 wMJayZ9uIuoM5qP8Lm1NL/5D5Jvj92/3YSTJy2zdleb0W5ol2BN8aDlUXazscAVnd2 KYZdJvBouPH9Z84iWi5pHxVSEvjYqIXWRl6bL+YjznJOfDF1iUkZXsDxCNpC+YOqY9 kErGM1esVgC9w== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Geert Uytterhoeven , =?UTF-8?q?Niklas=20S=C3=B6derlund?= , Sasha Levin Subject: [PATCH 5.4 039/183] ARM: dts: renesas: r8a73a4: Fix external clocks and clock rate Date: Sun, 24 Mar 2024 19:44:12 -0400 Message-ID: <20240324234638.1355609-40-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable From: Geert Uytterhoeven [ Upstream commit 090c4094574705b0afc7d37825cdc5d06f0e7e02 ] External clocks should be defined as zero-Hz clocks in the SoC .dtsi, and overridden in the board .dts when present. Correct the clock rate of extal1 from 25 to 26 MHz, to match the crystal oscillator present on the APE6-EVM board. Fixes: a76809a329d6ebae ("ARM: shmobile: r8a73a4: Common clock framework DT= description") Signed-off-by: Geert Uytterhoeven Reviewed-by: Niklas S=C3=B6derlund Link: https://lore.kernel.org/r/1692bc8cd465d62168cbf110522ad62a7af3f606.17= 05315614.git.geert+renesas@glider.be Signed-off-by: Sasha Levin --- arch/arm/boot/dts/r8a73a4-ape6evm.dts | 12 ++++++++++++ arch/arm/boot/dts/r8a73a4.dtsi | 9 ++++++--- 2 files changed, 18 insertions(+), 3 deletions(-) diff --git a/arch/arm/boot/dts/r8a73a4-ape6evm.dts b/arch/arm/boot/dts/r8a7= 3a4-ape6evm.dts index a5351ddbf5060..a396f403c9091 100644 --- a/arch/arm/boot/dts/r8a73a4-ape6evm.dts +++ b/arch/arm/boot/dts/r8a73a4-ape6evm.dts @@ -211,6 +211,18 @@ &cmt1 { status =3D "okay"; }; =20 +&extal1_clk { + clock-frequency =3D <26000000>; +}; + +&extal2_clk { + clock-frequency =3D <48000000>; +}; + +&extalr_clk { + clock-frequency =3D <32768>; +}; + &pfc { scifa0_pins: scifa0 { groups =3D "scifa0_data"; diff --git a/arch/arm/boot/dts/r8a73a4.dtsi b/arch/arm/boot/dts/r8a73a4.dtsi index 4447f45f0cba9..48121ef690c9d 100644 --- a/arch/arm/boot/dts/r8a73a4.dtsi +++ b/arch/arm/boot/dts/r8a73a4.dtsi @@ -494,17 +494,20 @@ clocks { extalr_clk: extalr { compatible =3D "fixed-clock"; #clock-cells =3D <0>; - clock-frequency =3D <32768>; + /* This value must be overridden by the board. */ + clock-frequency =3D <0>; }; extal1_clk: extal1 { compatible =3D "fixed-clock"; #clock-cells =3D <0>; - clock-frequency =3D <25000000>; + /* This value must be overridden by the board. */ + clock-frequency =3D <0>; }; extal2_clk: extal2 { compatible =3D "fixed-clock"; #clock-cells =3D <0>; - clock-frequency =3D <48000000>; + /* This value must be overridden by the board. */ + clock-frequency =3D <0>; }; fsiack_clk: fsiack { compatible =3D "fixed-clock"; --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 566732892BF; Sun, 24 Mar 2024 23:47:19 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324040; cv=none; b=qztxjFB3QacPciLg+puMwEtT/o/Yt8VlMtKxcjGugRrQNqF4vIEo7o1PMmDImJu20DukdDb6mrIryK53wLIY1fYWTnQafILjSfHzq1s6bncRPaYzjE1wot2e8XMU3ojDCHNl34Iasilqyc9Ht2D1aslB3sTqsgJyBCy7LLtmepI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324040; c=relaxed/simple; bh=/7/1b9rks8twEubNpUt8qsAQs2IeCT+nNQFQ6FdH8sI=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=pTOe3nHqr/F1DEir8A4OSS6N4MSJMM9gfnlETDm3XCOluu0aORmPmyubzGCnGLNQUzFWGFMhTapy1ZMn6bKuZZ2lu2gDvoih2HlDyGmz3cKBn2y9V5762G57H5HskS9KAFakK082+LhwZzZv1ELVG904T/kLD8mzzl5UN/Cqdjw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=b5Ift529; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="b5Ift529" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 92922C43399; Sun, 24 Mar 2024 23:47:18 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324039; bh=/7/1b9rks8twEubNpUt8qsAQs2IeCT+nNQFQ6FdH8sI=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=b5Ift529qPMO+w4GK6j9ST7lPrONGI5MQKjCFHVDRj3xFaAAFHtVDz2fbSSCfP5ZP w73QMkGC+1CO8P/f/mKAMY4K8dJHK6ypS/PKaWudCrZKVIWzU85UW7HQ6mGswVG4fi ybZq/msTzyAu4kzdTMEub0KKntT/wcLxJdXH2IOXat2F88M6MQlBhiOpIUaL6XyjkH CBIEnqtQqnkgQZTouUE0UmkYbO9UcTWkjSg9mTJ2vzEWgYmcV+i9eez4ZqRegjLjRe +WhhxVvDbsf/XnTcR8JZXSYPP8GiSMhPnsZX0bnfkW6mpoR6W0pIe1WkNi0aMhJFjs Jg6ckSnHSbTAA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Anastasia Belova , Viresh Kumar , Sasha Levin Subject: [PATCH 5.4 040/183] cpufreq: brcmstb-avs-cpufreq: add check for cpufreq_cpu_get's return value Date: Sun, 24 Mar 2024 19:44:13 -0400 Message-ID: <20240324234638.1355609-41-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Anastasia Belova [ Upstream commit f661017e6d326ee187db24194cabb013d81bc2a6 ] cpufreq_cpu_get may return NULL. To avoid NULL-dereference check it and return 0 in case of error. Found by Linux Verification Center (linuxtesting.org) with SVACE. Fixes: de322e085995 ("cpufreq: brcmstb-avs-cpufreq: AVS CPUfreq driver for = Broadcom STB SoCs") Signed-off-by: Anastasia Belova Signed-off-by: Viresh Kumar Signed-off-by: Sasha Levin --- drivers/cpufreq/brcmstb-avs-cpufreq.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/cpufreq/brcmstb-avs-cpufreq.c b/drivers/cpufreq/brcmst= b-avs-cpufreq.c index 541486217984b..1302e1900dcb1 100644 --- a/drivers/cpufreq/brcmstb-avs-cpufreq.c +++ b/drivers/cpufreq/brcmstb-avs-cpufreq.c @@ -457,6 +457,8 @@ static bool brcm_avs_is_firmware_loaded(struct private_= data *priv) static unsigned int brcm_avs_cpufreq_get(unsigned int cpu) { struct cpufreq_policy *policy =3D cpufreq_cpu_get(cpu); + if (!policy) + return 0; struct private_data *priv =3D policy->driver_data; =20 return brcm_avs_get_frequency(priv->base); --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 8257F2892C5; Sun, 24 Mar 2024 23:47:20 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324041; cv=none; b=XKjVb0pr9VTuXu2DbasqzD7o1LswNVua4sQzl1ClWC8eXzHK+jwKLUJ8nPgabGD7Wr373uxPqPRu6n0RYFgClvyd1IifNI/AAnWwfLqsArGtBAFJ9J/kZgcKCHKARoFziGUTEjaPuvsoXA3LBUadPsR8ArXY5zUi3sRI4Cmpu7I= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324041; c=relaxed/simple; bh=3LozpwnbnWU3VCjQuiw9+8pmki9smLffvfOJBovQu50=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=gh3Pw6NWBNXxshARbodgFP5hQyl7h874kWK1C3ABWRkXucqOIRHPfTNlchRw6go0SSi12Td1i16d8FmaZigcLzoxPjT4NfeR2BoC4tUVHyo6TsJzT2XRjTkwt9isvA4mCS1Nymr1LRiazcIqGTTp/lBYwJsTru+vdEfso0BzfVU= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=AJgnNNXw; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="AJgnNNXw" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 7A3A3C43390; Sun, 24 Mar 2024 23:47:19 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324040; bh=3LozpwnbnWU3VCjQuiw9+8pmki9smLffvfOJBovQu50=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=AJgnNNXwd24AnOBBIgwTwfDI3qeKh6r8toL4eWVg2oFGj74b9WxiAV0sDfGbYeWtu s5R3+BKrcE04GiRjUBLFsIOJZILeaLIjrDYABQMDSxin2dlgfY0JAMFD1Arv2Fb4Z3 2pus4oa9rw62H+2/CEgc7QHmTOxk/vWH8aVMIukSX4I6aZB098tsoXCP4ACRKs3VM6 Zd4lULv5NM2kIsnf+jY3z9DEj5N/u2r9N2PWCW3EPXNWPXkbGijAb0k5yFJIx8ytdS FQ1/uztQnN3gt2fGc7/yYOYALH+TzOKeBWQxcxci3LGXzjHRlXl86f0dSH3zV4X0TS aErI2dkvGWpFQ== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Eric Dumazet , Guillaume Nault , Kuniyuki Iwashima , Willem de Bruijn , Paolo Abeni , Sasha Levin Subject: [PATCH 5.4 041/183] sock_diag: annotate data-races around sock_diag_handlers[family] Date: Sun, 24 Mar 2024 19:44:14 -0400 Message-ID: <20240324234638.1355609-42-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Eric Dumazet [ Upstream commit efd402537673f9951992aea4ef0f5ff51d858f4b ] __sock_diag_cmd() and sock_diag_bind() read sock_diag_handlers[family] without a lock held. Use READ_ONCE()/WRITE_ONCE() annotations to avoid potential issues. Fixes: 8ef874bfc729 ("sock_diag: Move the sock_ code to net/core/") Signed-off-by: Eric Dumazet Reviewed-by: Guillaume Nault Reviewed-by: Kuniyuki Iwashima Reviewed-by: Willem de Bruijn Signed-off-by: Paolo Abeni Signed-off-by: Sasha Levin --- net/core/sock_diag.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/net/core/sock_diag.c b/net/core/sock_diag.c index c13ffbd33d8d6..315a5200d170b 100644 --- a/net/core/sock_diag.c +++ b/net/core/sock_diag.c @@ -188,7 +188,7 @@ int sock_diag_register(const struct sock_diag_handler *= hndl) if (sock_diag_handlers[hndl->family]) err =3D -EBUSY; else - sock_diag_handlers[hndl->family] =3D hndl; + WRITE_ONCE(sock_diag_handlers[hndl->family], hndl); mutex_unlock(&sock_diag_table_mutex); =20 return err; @@ -204,7 +204,7 @@ void sock_diag_unregister(const struct sock_diag_handle= r *hnld) =20 mutex_lock(&sock_diag_table_mutex); BUG_ON(sock_diag_handlers[family] !=3D hnld); - sock_diag_handlers[family] =3D NULL; + WRITE_ONCE(sock_diag_handlers[family], NULL); mutex_unlock(&sock_diag_table_mutex); } EXPORT_SYMBOL_GPL(sock_diag_unregister); @@ -222,7 +222,7 @@ static int __sock_diag_cmd(struct sk_buff *skb, struct = nlmsghdr *nlh) return -EINVAL; req->sdiag_family =3D array_index_nospec(req->sdiag_family, AF_MAX); =20 - if (sock_diag_handlers[req->sdiag_family] =3D=3D NULL) + if (READ_ONCE(sock_diag_handlers[req->sdiag_family]) =3D=3D NULL) sock_load_diag_module(req->sdiag_family, 0); =20 mutex_lock(&sock_diag_table_mutex); @@ -281,12 +281,12 @@ static int sock_diag_bind(struct net *net, int group) switch (group) { case SKNLGRP_INET_TCP_DESTROY: case SKNLGRP_INET_UDP_DESTROY: - if (!sock_diag_handlers[AF_INET]) + if (!READ_ONCE(sock_diag_handlers[AF_INET])) sock_load_diag_module(AF_INET, 0); break; case SKNLGRP_INET6_TCP_DESTROY: case SKNLGRP_INET6_UDP_DESTROY: - if (!sock_diag_handlers[AF_INET6]) + if (!READ_ONCE(sock_diag_handlers[AF_INET6])) sock_load_diag_module(AF_INET6, 0); break; } --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 074C82892D1; Sun, 24 Mar 2024 23:47:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324043; cv=none; b=iYs0HWY/9P2lERCQHjc+OC5kxUkW9ZDFOty3jXBGqq8ZdJQc60mpgHfY79HNEWNJdiitMFWa9w6hB8kY1sJGMP56eN8wki1O1exOfy7EjNArWVBPFD3BVdq5UMUrJaArXmOy0r2NLtxcAy9Aw95wfdFe5v86T+0qlsSpyTFWDdw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324043; c=relaxed/simple; bh=PAMZMwA6ckum7R7Mm0LbM8DTdW/7ofn9I96UXMzIw1g=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=EX7yJ/s98G/NpzDLkPEmJ+sPr544ANtYPQrI4UR85x3qxdND+wtZCjv1uIOmm3rqXONhX9C1TBUI8KG24KwNm0MBXmFwYf7e0dTcng+TeihkWBqu5KOzuL7jLnwyus1qAzNiZL0zz8FB8wUYS6vc90eqge9WlbZ9D46LfwXGPmI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=h2etgfK/; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="h2etgfK/" Received: by smtp.kernel.org (Postfix) with ESMTPSA id A5B68C43394; Sun, 24 Mar 2024 23:47:20 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324041; bh=PAMZMwA6ckum7R7Mm0LbM8DTdW/7ofn9I96UXMzIw1g=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=h2etgfK/uff7gM1K/ZjdwHYjS4NWLF8sGNo43CD0ABbrC3eeTy+1SPgv4oRM4ORaS D9H+xoeiPUjhdHIMNJ52lc+08TaCoSeRcZ/A2rdVr6laxT4Qb2iQsm/eM/e5bW5VAg 6H8+aqEc8oxkV4c4ejO9VSUdByTb4TvcvmE/ZkgHTqgxYKZcsKCJ+bU2MBDebYOX4a 556XY6by7lLTg5HXoE/VwjXX6y87c/DwUOs1p/5J8Ho+bz+1dAuFHCnTaJefoPlhwJ ebG+3UifYBgELcoCm7j36mqmu8FFgkTRML0jt0w223sAtTGu7EtaqVKCmrp4ZSjLgd 10qDP1zLr37gA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Kuniyuki Iwashima , Jakub Kicinski , Sasha Levin Subject: [PATCH 5.4 042/183] af_unix: Annotate data-race of gc_in_progress in wait_for_unix_gc(). Date: Sun, 24 Mar 2024 19:44:15 -0400 Message-ID: <20240324234638.1355609-43-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Kuniyuki Iwashima [ Upstream commit 31e03207119a535d0b0e3b3a7f91983aeb2cb14d ] gc_in_progress is changed under spin_lock(&unix_gc_lock), but wait_for_unix_gc() reads it locklessly. Let's use READ_ONCE(). Fixes: 5f23b734963e ("net: Fix soft lockups/OOM issues w/ unix garbage coll= ector") Signed-off-by: Kuniyuki Iwashima Link: https://lore.kernel.org/r/20240123170856.41348-2-kuniyu@amazon.com Signed-off-by: Jakub Kicinski Signed-off-by: Sasha Levin --- net/unix/garbage.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/unix/garbage.c b/net/unix/garbage.c index dc27635403932..9121a4d5436d5 100644 --- a/net/unix/garbage.c +++ b/net/unix/garbage.c @@ -198,7 +198,7 @@ void wait_for_unix_gc(void) if (READ_ONCE(unix_tot_inflight) > UNIX_INFLIGHT_TRIGGER_GC && !READ_ONCE(gc_in_progress)) unix_gc(); - wait_event(unix_gc_wait, gc_in_progress =3D=3D false); + wait_event(unix_gc_wait, !READ_ONCE(gc_in_progress)); } =20 /* The external entry point: unix_gc() */ --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C4FE92892D6; Sun, 24 Mar 2024 23:47:22 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324043; cv=none; b=H2LZIjInxLaMQWkGX5FLw5n2QrvO0mq0BuMcgekJejS+W0ss0fkI5Ig59pQX2HS4lHwlYPoFP8hWLQbuwU0PvwVhRvkjjLZTIyC1R097Nm9UNOTfM5DB7p6SrUgiXWtyuVCTuZHGLvPsde84NnKeIDjGea82Q8v7YIj9oOEe9Vw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324043; c=relaxed/simple; bh=LvtZg5e0VQtOBT+DmVlIpjevxUc7VebV46SOEb3fPHw=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=utc3NDRNlXqFx+KdZmfYzl1C1T0Ck6SgQRu3DY2SQ8ATmNJOTTzldVDspjix4WJ28CxjSMfvxx20OzpwjnOQ5aeqxnlhKZuxXB3RWyc0mOG7q0R7PkY5l2/N/IWCgLocN0koXCFEwOy9GoHWBo3igaC1L/TNYmYjG3GQeouk3kY= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=lv9XJFDJ; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="lv9XJFDJ" Received: by smtp.kernel.org (Postfix) with ESMTPSA id DEC26C433C7; Sun, 24 Mar 2024 23:47:21 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324042; bh=LvtZg5e0VQtOBT+DmVlIpjevxUc7VebV46SOEb3fPHw=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=lv9XJFDJkW1dqY6T8OgF6uLhZLV3ecy7hAvpXfP1+oLf+RAM17HJm0oFD8gRYFCFa Qt9Kapz/NxNbBbFRok0GpBokMAYDTkuRRbQ1JM7UXND65QcebQWHQSCE4o0Hzx4kel M5ysRVjbFqgW3M7oRKMAOQqoLd0yjPQunWplM/sp9MIerX6NvwoWS0jgfESP+i0OZ3 ScKNa2QmGkP3OSyPFfgNs+5Fd8EPwzyPYGblx1K6fRItxVvQuyqreMtTbV4dL2ReG0 tGvn/2GNWMG7ZcSnOacsxTPKsfppxRh/pyXd90e/WYHpRZKH1Wweuq/ZXUVqelXno8 GKZdpmZbuBlgA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Breno Leitao , Jiri Pirko , "David S . Miller" , Sasha Levin Subject: [PATCH 5.4 043/183] net: blackhole_dev: fix build warning for ethh set but not used Date: Sun, 24 Mar 2024 19:44:16 -0400 Message-ID: <20240324234638.1355609-44-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Breno Leitao [ Upstream commit 843a8851e89e2e85db04caaf88d8554818319047 ] lib/test_blackhole_dev.c sets a variable that is never read, causing this following building warning: lib/test_blackhole_dev.c:32:17: warning: variable 'ethh' set but not used = [-Wunused-but-set-variable] Remove the variable struct ethhdr *ethh, which is unused. Fixes: 509e56b37cc3 ("blackhole_dev: add a selftest") Signed-off-by: Breno Leitao Reviewed-by: Jiri Pirko Signed-off-by: David S. Miller Signed-off-by: Sasha Levin --- lib/test_blackhole_dev.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/lib/test_blackhole_dev.c b/lib/test_blackhole_dev.c index 4c40580a99a36..f247089d63c08 100644 --- a/lib/test_blackhole_dev.c +++ b/lib/test_blackhole_dev.c @@ -29,7 +29,6 @@ static int __init test_blackholedev_init(void) { struct ipv6hdr *ip6h; struct sk_buff *skb; - struct ethhdr *ethh; struct udphdr *uh; int data_len; int ret; @@ -61,7 +60,7 @@ static int __init test_blackholedev_init(void) ip6h->saddr =3D in6addr_loopback; ip6h->daddr =3D in6addr_loopback; /* Ether */ - ethh =3D (struct ethhdr *)skb_push(skb, sizeof(struct ethhdr)); + skb_push(skb, sizeof(struct ethhdr)); skb_set_mac_header(skb, 0); =20 skb->protocol =3D htons(ETH_P_IPV6); --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 0CD272892DF; Sun, 24 Mar 2024 23:47:23 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324045; cv=none; b=fN/Fli4E286v3tfd7OgKsmNnLVUX90UzyrW8naTkn/G9d9lwQBaJ3n4OZQWmzCkM52Upxic+mePXBQlTFaEcX/aofIOf6eDuOghWaJHbD2mLY9vNC8WwpBQFEPqWh/1JlOyZftbJCb+mLMFtSlptsvjaNWBUW+k0GLSQgjy2B+4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324045; c=relaxed/simple; bh=eTI9IOKkvtOB8T26gH1qSqbthfn8ohH424sihv1I7Fk=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=lrhKFPfnSQ4oMLN7s/28Gq49mzLAIGCfNcJX/FBuGbSCRA6gSvbRuUZMorRKyzW/qkO5uCPO32W77ZKUtmsIxAxv3oV/5bSR+g+rjp/isXhKysYKqJyl27e0Z2qEKmoQ0CcT2lv427WX4TfXCi9zIprI1nljUCdjjOVtZvtGhkk= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=RtxIqAr2; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="RtxIqAr2" Received: by smtp.kernel.org (Postfix) with ESMTPSA id E77C2C433F1; Sun, 24 Mar 2024 23:47:22 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324043; bh=eTI9IOKkvtOB8T26gH1qSqbthfn8ohH424sihv1I7Fk=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=RtxIqAr29iPGypJhjvbrgTTLsgVfRK7ks53JQCAI0FzRRDx9ustsImkckwIihwjDt fx6RY5MKJfu8pXKpSGRqVG4Gy+8BJKNHla2bZ1k/oYCPAxPAxIRd1wDAsZwRe2FPp4 QYFi6aFniqqA4LVzq3RBYeUOwycREV3U5yqYEtQTtxNHLBK4l4iELyU1Mw4Bd7sgC/ UbZ1RbYfrB4Md6AiEngy0R0LTGisy3xK51ZuuNgCVSY3C9uue4FK7RlyiXDXPeLz9+ 1R+tWo4NQ3oZKb3iU42y4LXN6tjszSDL4i8grYQxjZLndDMuomOPK6f1Ddd26pmLHG RTHfceNWIjF0Q== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Zhipeng Lu , Kalle Valo , Sasha Levin Subject: [PATCH 5.4 044/183] wifi: libertas: fix some memleaks in lbs_allocate_cmd_buffer() Date: Sun, 24 Mar 2024 19:44:17 -0400 Message-ID: <20240324234638.1355609-45-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Zhipeng Lu [ Upstream commit 5f0e4aede01cb01fa633171f0533affd25328c3a ] In the for statement of lbs_allocate_cmd_buffer(), if the allocation of cmdarray[i].cmdbuf fails, both cmdarray and cmdarray[i].cmdbuf needs to be freed. Otherwise, there will be memleaks in lbs_allocate_cmd_buffer(). Fixes: 876c9d3aeb98 ("[PATCH] Marvell Libertas 8388 802.11b/g USB driver") Signed-off-by: Zhipeng Lu Signed-off-by: Kalle Valo Link: https://msgid.link/20240126075336.2825608-1-alexious@zju.edu.cn Signed-off-by: Sasha Levin --- drivers/net/wireless/marvell/libertas/cmd.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/drivers/net/wireless/marvell/libertas/cmd.c b/drivers/net/wire= less/marvell/libertas/cmd.c index a4d9dd73b2588..db9a852fa58a3 100644 --- a/drivers/net/wireless/marvell/libertas/cmd.c +++ b/drivers/net/wireless/marvell/libertas/cmd.c @@ -1133,7 +1133,7 @@ int lbs_allocate_cmd_buffer(struct lbs_private *priv) if (!cmdarray[i].cmdbuf) { lbs_deb_host("ALLOC_CMD_BUF: ptempvirtualaddr is NULL\n"); ret =3D -1; - goto done; + goto free_cmd_array; } } =20 @@ -1141,8 +1141,17 @@ int lbs_allocate_cmd_buffer(struct lbs_private *priv) init_waitqueue_head(&cmdarray[i].cmdwait_q); lbs_cleanup_and_insert_cmd(priv, &cmdarray[i]); } - ret =3D 0; + return 0; =20 +free_cmd_array: + for (i =3D 0; i < LBS_NUM_CMD_BUFFERS; i++) { + if (cmdarray[i].cmdbuf) { + kfree(cmdarray[i].cmdbuf); + cmdarray[i].cmdbuf =3D NULL; + } + } + kfree(priv->cmd_array); + priv->cmd_array =3D NULL; done: return ret; } --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id A5C0A1802C9; Sun, 24 Mar 2024 23:47:24 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324045; cv=none; b=SwHFZjpXpLP6O6kyJSIjNt4tO8fK2RjRDlweGFG6hiE9fZS3LWIYOwQx4FOSjZFTOZHuTZW/c5xwg3H+PDQRT7tv+7+zsgsbXaAkTX8x/3jmAnGv9fXJr4cDavVKv71gxYWWhIFkXKyvbX8iqCF/Adpcc5HGw2g3VWx8nK+JVR4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324045; c=relaxed/simple; bh=cUgul7GVawXXTCkismqgAbljYZKw1pITj12s5zgPlv4=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=OFlkwUuxnBKnyjtlEv8uC7iE606UTGGFR4Q00NJplxPUE4QCRHqda+Ad+AK6Nv0qwVmZgRtoJNfBQDRB8oTm4lDjXmJRr2GAqppOdcw91AvYKV55/0xf/rFAAMmi1aZF6AFs6ZtHfSgqRcMKYLdYefpKAfrsA+aZnk/HWtdYQSw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=g+I/iqoC; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="g+I/iqoC" Received: by smtp.kernel.org (Postfix) with ESMTPSA id CE1FBC43390; Sun, 24 Mar 2024 23:47:23 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324044; bh=cUgul7GVawXXTCkismqgAbljYZKw1pITj12s5zgPlv4=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=g+I/iqoCMJczfqw7aANqe0jAFQp8/0JC2x9+Qitdn/ZHefhKd+KL2ZJsNkHuN/b0C 5Kw0T01uYhgDhxe0gv8cz0XA/kJAzWwpTXjAa6BgdW5KUzGKkMPT77AnHrK5nYN3QH T63xl4L2k6RFg1OnHH9vINya+DHDqaIN2zmlp4eVTvgiwDAAyNrd+d+JVm+s+KXhP8 jW8+c9+ZCt8xFziWyXurdsb//Hd+h+Cc8a83kUvEQuc/AlOTJDPyh9mKpnZG0H87pc 1vnzgSopHs73fyzsG3ZKDR+bEaLoYIR3bSqFej9vKOme8yhZQZgwwVqcJ/pSNEH0mc hvn+qQ69vHBlA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= , Matthias Brugger , AngeloGioacchino Del Regno , Sasha Levin Subject: [PATCH 5.4 045/183] arm64: dts: mediatek: mt7622: add missing "device_type" to memory nodes Date: Sun, 24 Mar 2024 19:44:18 -0400 Message-ID: <20240324234638.1355609-46-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable From: Rafa=C5=82 Mi=C5=82ecki [ Upstream commit 99d100e00144bc01b49a697f4bc4398f2f7e7ce4 ] This fixes: arch/arm64/boot/dts/mediatek/mt7622-rfb1.dtb: /: memory@40000000: 'device_t= ype' is a required property from schema $id: http://devicetree.org/schemas/memory.yaml# arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dtb: /: memory@4000000= 0: 'device_type' is a required property from schema $id: http://devicetree.org/schemas/memory.yaml# Signed-off-by: Rafa=C5=82 Mi=C5=82ecki Reviewed-by: Matthias Brugger Reviewed-by: AngeloGioacchino Del Regno Link: https://lore.kernel.org/r/20240122132357.31264-1-zajec5@gmail.com Signed-off-by: AngeloGioacchino Del Regno Signed-off-by: Sasha Levin --- arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts | 1 + arch/arm64/boot/dts/mediatek/mt7622-rfb1.dts | 1 + 2 files changed, 2 insertions(+) diff --git a/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts b/arc= h/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts index 7b095378c96cd..eec9ec1db682a 100644 --- a/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts +++ b/arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts @@ -71,6 +71,7 @@ red { =20 memory@40000000 { reg =3D <0 0x40000000 0 0x40000000>; + device_type =3D "memory"; }; =20 reg_1p8v: regulator-1p8v { diff --git a/arch/arm64/boot/dts/mediatek/mt7622-rfb1.dts b/arch/arm64/boot= /dts/mediatek/mt7622-rfb1.dts index f586c1ee4a59e..ee57fccd489a3 100644 --- a/arch/arm64/boot/dts/mediatek/mt7622-rfb1.dts +++ b/arch/arm64/boot/dts/mediatek/mt7622-rfb1.dts @@ -57,6 +57,7 @@ wps { =20 memory@40000000 { reg =3D <0 0x40000000 0 0x20000000>; + device_type =3D "memory"; }; =20 reg_1p8v: regulator-1p8v { --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id E056B2892DD; Sun, 24 Mar 2024 23:47:25 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324047; cv=none; b=st1uG4EIw4QDVMo/qbTl9czXIa7VEcFOYcfUtyH2b0dKuYp3hCr6SJZt0njKGuUr4WFffh/O6Uu5kGo2P4OFyl6uOxPWxMXWN8og4D3yU6QYsbocoGykEJk4bzHFebF+oCGlPK7p0Qhd+tYrE90a5OFUIkuKLoR7Md4JmsJeHfo= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324047; c=relaxed/simple; bh=E8FWAA6NlShkdP33sFC7FYILvWHw11jVzhdp93WUky8=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=NQ7it6enSywMVEovqW2QrH53surOUFQGHV2ZvaObLVRCIsf/TxeNAkVWnFZ7HZLB+0EURPqk2P0YLtlNPGK57dmm8XtnBjELrWjsjIZ2/Pv3WDGxfgjHgSCx8BxXa3+oZzd9N/KlTj7HotwXttkjngVJxza0LEemnRCzIKGBSIE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=EmQH2G0I; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="EmQH2G0I" Received: by smtp.kernel.org (Postfix) with ESMTPSA id CAA5FC43399; Sun, 24 Mar 2024 23:47:24 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324045; bh=E8FWAA6NlShkdP33sFC7FYILvWHw11jVzhdp93WUky8=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=EmQH2G0IYj4cpqHqlmGpwNsE+obwQjIPNPX1ZEEonor8Mnym9XklAUqqnZVFZYkFe qgoPs1bi0IO7hHaw0yDelTlsplrCAtiE9KzQO73NhCFv8AxEjNcLLSntCzxrHjF5EI FjC7UqxIP0vtmdG/t9lydMwFXAx5n3WcgmAplWwn8ovt37aAnCakiEHfKdVsebksmg BVKrpWm/9VM/UrX97Y0G9dP2DssdaUAdoOOyURjzktelw9KmUv4ADiLI9NuAMsILGD qJQCkAJchfAHnZX+r5/JkIKB+RBH0cnncWfI4vhKVLZP3hieBcy8SPiFpKU6X/wThg BbE85hSJTOgIA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Alexei Starovoitov , Daniel Borkmann , Andrii Nakryiko , John Fastabend , Martin KaFai Lau , Sasha Levin Subject: [PATCH 5.4 046/183] bpf: Add typecast to bpf helpers to help BTF generation Date: Sun, 24 Mar 2024 19:44:19 -0400 Message-ID: <20240324234638.1355609-47-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Alexei Starovoitov [ Upstream commit 7c6a469e3416fa23568c2395a3faa7dd6e376dcb ] When pahole converts dwarf to btf it emits only used types. Wrap existing bpf helper functions into typedef and use it in typecast to make gcc emits this type into dwarf. Then pahole will convert it to btf. The "btf_#name_of_helper" types will be used to figure out types of arguments of bpf helpers. The generated code before and after is the same. Only dwarf and btf sections are different. Signed-off-by: Alexei Starovoitov Signed-off-by: Daniel Borkmann Acked-by: Andrii Nakryiko Acked-by: John Fastabend Acked-by: Martin KaFai Lau Link: https://lore.kernel.org/bpf/20191016032505.2089704-3-ast@kernel.org Stable-dep-of: 178c54666f9c ("bpf: Mark bpf_spin_{lock,unlock}() helpers wi= th notrace correctly") Signed-off-by: Sasha Levin --- include/linux/filter.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/include/linux/filter.h b/include/linux/filter.h index 440014875acf4..11407e9e606db 100644 --- a/include/linux/filter.h +++ b/include/linux/filter.h @@ -479,10 +479,11 @@ static inline bool insn_is_zext(const struct bpf_insn= *insn) #define BPF_CALL_x(x, name, ...) \ static __always_inline \ u64 ____##name(__BPF_MAP(x, __BPF_DECL_ARGS, __BPF_V, __VA_ARGS__)); \ + typedef u64 (*btf_##name)(__BPF_MAP(x, __BPF_DECL_ARGS, __BPF_V, __VA_ARG= S__)); \ u64 name(__BPF_REG(x, __BPF_DECL_REGS, __BPF_N, __VA_ARGS__)); \ u64 name(__BPF_REG(x, __BPF_DECL_REGS, __BPF_N, __VA_ARGS__)) \ { \ - return ____##name(__BPF_MAP(x,__BPF_CAST,__BPF_N,__VA_ARGS__));\ + return ((btf_##name)____##name)(__BPF_MAP(x,__BPF_CAST,__BPF_N,__VA_ARGS= __));\ } \ static __always_inline \ u64 ____##name(__BPF_MAP(x, __BPF_DECL_ARGS, __BPF_V, __VA_ARGS__)) --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 1C9F51448C0; Sun, 24 Mar 2024 23:47:27 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324047; cv=none; b=i/kqAogsrfZ2vbwafDVjyjzutGgfPjG2IpBBtlTv1qBaRmOxAtvEUydrc5qiiD53WPUISvHdvDDxCkG95Rd8IGKBT1v43QL5s/x5eQ7M3jdakg+60dOABKcgoOHEW6NwcIMBI/Ed+WfyGO3ssLzfbAhSWPax7zkCWvvC+wZ3bLk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324047; c=relaxed/simple; bh=IU3AvUhoUKQzZLdgLjENwdVUYdXucV+7GjJRGg9khUU=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=P/fjMazHY8nAkVuXD4zRt5/kt2wrLVaIiD2KYue9BF9MQ40Dxo9gYzCZJeQ6T/yqzRtyrSu7ia7sDN3y0fPoPXFMwYxDSu1iiDbmLR2SN15XSQPDHKzQ7vbkVM1UpwKiIsjQT5IskBzgjZn2LP6vy/+SQNhgUylOUCCCuZcC/WM= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=ZRThhl+y; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="ZRThhl+y" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 10B6FC433F1; Sun, 24 Mar 2024 23:47:25 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324047; bh=IU3AvUhoUKQzZLdgLjENwdVUYdXucV+7GjJRGg9khUU=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=ZRThhl+y2c7McaFvsfydy3obMV4plB1DmDzL8X270aHKcxCHc83xwQnIg9K2U6fna MUbaF70+L/eLOJu3Fe1AQIKklys+/8PBBlzOVC/w2Q8y0VOThSi4TTIyI5M8GigLvA Hndh12omXL2dIlEzgHbyb2Hm6DA8WFNSO4ZeCHq+KV0Lx+sX5U+6OuOzUObwlNIvl8 YEss07I+vN6LvuB14xcoTCcbYMwfbbN5EcE/3XAyRReCyY4PG4FZahB5lO5hgt1fjo NPf0k14KRMwD9XsbAOIhYip1huBHyVc75iklpN78C4n8ag4qz3mPJm5eNxfLKdd2vX l25RRwmzB85Zg== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Alexei Starovoitov , Daniel Borkmann , Martin KaFai Lau , Andrii Nakryiko , =?UTF-8?q?Toke=20H=C3=B8iland-J=C3=B8rgensen?= , Sasha Levin Subject: [PATCH 5.4 047/183] bpf: Factor out bpf_spin_lock into helpers. Date: Sun, 24 Mar 2024 19:44:20 -0400 Message-ID: <20240324234638.1355609-48-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable From: Alexei Starovoitov [ Upstream commit c1b3fed319d32a721d4b9c17afaeb430444ff773 ] Move ____bpf_spin_lock/unlock into helpers to make it more clear that quadruple underscore bpf_spin_lock/unlock are irqsave/restore variants. Signed-off-by: Alexei Starovoitov Signed-off-by: Daniel Borkmann Acked-by: Martin KaFai Lau Acked-by: Andrii Nakryiko Acked-by: Toke H=C3=B8iland-J=C3=B8rgensen Link: https://lore.kernel.org/bpf/20210715005417.78572-3-alexei.starovoitov= @gmail.com Stable-dep-of: 178c54666f9c ("bpf: Mark bpf_spin_{lock,unlock}() helpers wi= th notrace correctly") Signed-off-by: Sasha Levin --- kernel/bpf/helpers.c | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/kernel/bpf/helpers.c b/kernel/bpf/helpers.c index a77d2814cac5d..4ba3dc621a345 100644 --- a/kernel/bpf/helpers.c +++ b/kernel/bpf/helpers.c @@ -262,13 +262,18 @@ static inline void __bpf_spin_unlock(struct bpf_spin_= lock *lock) =20 static DEFINE_PER_CPU(unsigned long, irqsave_flags); =20 -notrace BPF_CALL_1(bpf_spin_lock, struct bpf_spin_lock *, lock) +static inline void __bpf_spin_lock_irqsave(struct bpf_spin_lock *lock) { unsigned long flags; =20 local_irq_save(flags); __bpf_spin_lock(lock); __this_cpu_write(irqsave_flags, flags); +} + +notrace BPF_CALL_1(bpf_spin_lock, struct bpf_spin_lock *, lock) +{ + __bpf_spin_lock_irqsave(lock); return 0; } =20 @@ -279,13 +284,18 @@ const struct bpf_func_proto bpf_spin_lock_proto =3D { .arg1_type =3D ARG_PTR_TO_SPIN_LOCK, }; =20 -notrace BPF_CALL_1(bpf_spin_unlock, struct bpf_spin_lock *, lock) +static inline void __bpf_spin_unlock_irqrestore(struct bpf_spin_lock *lock) { unsigned long flags; =20 flags =3D __this_cpu_read(irqsave_flags); __bpf_spin_unlock(lock); local_irq_restore(flags); +} + +notrace BPF_CALL_1(bpf_spin_unlock, struct bpf_spin_lock *, lock) +{ + __bpf_spin_unlock_irqrestore(lock); return 0; } =20 @@ -306,9 +316,9 @@ void copy_map_value_locked(struct bpf_map *map, void *d= st, void *src, else lock =3D dst + map->spin_lock_off; preempt_disable(); - ____bpf_spin_lock(lock); + __bpf_spin_lock_irqsave(lock); copy_map_value(map, dst, src); - ____bpf_spin_unlock(lock); + __bpf_spin_unlock_irqrestore(lock); preempt_enable(); } =20 --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 1CB4A180B60; Sun, 24 Mar 2024 23:47:28 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324048; cv=none; b=ihA8DXxAABEE2CHSYjvvfan9qH9RHxblCfpJDFtlBrnyDxmfzIoDgiVO2q2EyqkRUmIHrBH0+lZjqXuQDR4gqqIdZ5hk4Vrgki4+R1RKG2mMY83cV8OLbasv7v7OjN1/LDbyU0UpWfLOi6T10POy1g75b2JMZ2v7FrhY0cGyIi8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324048; c=relaxed/simple; bh=SVYB6aRcWXIhNr3h9gkAdQn6oYuwZ8uItYgbLrNRQCg=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=BTJWwvTUKLiRFbiR7p+flybgA6hAJJNG2/uLv1507NOAqGC8DE74DGzSmZjloiPFlljPkRFtDIMpSzI0/UTZPFNpudSRneELSZ5AsJqlYVFTYIg7bgoUuih1Bw3i/NLBOsulFJd0lbloMFeLLgDTxo3yAki2r1RKnZ4sfgS32VU= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=cJrl9hnB; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="cJrl9hnB" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 40BFFC433A6; Sun, 24 Mar 2024 23:47:27 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324048; bh=SVYB6aRcWXIhNr3h9gkAdQn6oYuwZ8uItYgbLrNRQCg=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=cJrl9hnBkAfI6U5e6VVNGIic2MID/wL2lBcMHSUDXEVXdcUVI9sF4eU5h+tNM9teO /YWXbjN6o2YdVFvlZHIusJJpxwVxqJ6t3WlXG/rO/1OAsibR6i/0edrJ/w2fm9tsGr 7Z7q7YOW8/8FdA3jlK4AcWZBSOB4qp1GSWIuWi7rKwqfN9LXxCp7gkgSNPIwN8Gxpy HQEW8oPnkzZ/TPZMHeFdrgZnXCzXRThSyh/sBdiPxAf56twRVE03HJvT3m/UclcgdO ctRpIhWGAsyy1M7hYa2NZYRVHo0C2+fwhccPPP9wmDRgq/6V9GAKB0WcW17fTA0mEK irzHVXjkkY8nA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Yonghong Song , Andrii Nakryiko , Jiri Olsa , Sasha Levin Subject: [PATCH 5.4 048/183] bpf: Mark bpf_spin_{lock,unlock}() helpers with notrace correctly Date: Sun, 24 Mar 2024 19:44:21 -0400 Message-ID: <20240324234638.1355609-49-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Yonghong Song [ Upstream commit 178c54666f9c4d2f49f2ea661d0c11b52f0ed190 ] Currently tracing is supposed not to allow for bpf_spin_{lock,unlock}() helper calls. This is to prevent deadlock for the following cases: - there is a prog (prog-A) calling bpf_spin_{lock,unlock}(). - there is a tracing program (prog-B), e.g., fentry, attached to bpf_spin_lock() and/or bpf_spin_unlock(). - prog-B calls bpf_spin_{lock,unlock}(). For such a case, when prog-A calls bpf_spin_{lock,unlock}(), a deadlock will happen. The related source codes are below in kernel/bpf/helpers.c: notrace BPF_CALL_1(bpf_spin_lock, struct bpf_spin_lock *, lock) notrace BPF_CALL_1(bpf_spin_unlock, struct bpf_spin_lock *, lock) notrace is supposed to prevent fentry prog from attaching to bpf_spin_{lock,unlock}(). But actually this is not the case and fentry prog can successfully attached to bpf_spin_lock(). Siddharth Chintamaneni reported the issue in [1]. The following is the macro definition for above BPF_CALL_1: #define BPF_CALL_x(x, name, ...) = \ static __always_inline = \ u64 ____##name(__BPF_MAP(x, __BPF_DECL_ARGS, __BPF_V, __VA_ARGS__))= ; \ typedef u64 (*btf_##name)(__BPF_MAP(x, __BPF_DECL_ARGS, __BPF_V, __= VA_ARGS__)); \ u64 name(__BPF_REG(x, __BPF_DECL_REGS, __BPF_N, __VA_ARGS__)); = \ u64 name(__BPF_REG(x, __BPF_DECL_REGS, __BPF_N, __VA_ARGS__)) = \ { = \ return ((btf_##name)____##name)(__BPF_MAP(x,__BPF_CAST,__BP= F_N,__VA_ARGS__));\ } = \ static __always_inline = \ u64 ____##name(__BPF_MAP(x, __BPF_DECL_ARGS, __BPF_V, __VA_ARGS__)) #define BPF_CALL_1(name, ...) BPF_CALL_x(1, name, __VA_ARGS__) The notrace attribute is actually applied to the static always_inline funct= ion ____bpf_spin_{lock,unlock}(). The actual callback function bpf_spin_{lock,unlock}() is not marked with notrace, hence allowing fentry prog to attach to two helpers, and this may cause the above mentioned deadlock. Siddharth Chintamaneni actually has a reproducer in [2]. To fix the issue, a new macro NOTRACE_BPF_CALL_1 is introduced which will add notrace attribute to the original function instead of the hidden always_inline function and this fixed the problem. [1] https://lore.kernel.org/bpf/CAE5sdEigPnoGrzN8WU7Tx-h-iFuMZgW06qp0KHWt= pvoXxf1OAQ@mail.gmail.com/ [2] https://lore.kernel.org/bpf/CAE5sdEg6yUc_Jz50AnUXEEUh6O73yQ1Z6NV2srJn= ef0ZrQkZew@mail.gmail.com/ Fixes: d83525ca62cf ("bpf: introduce bpf_spin_lock") Signed-off-by: Yonghong Song Signed-off-by: Andrii Nakryiko Acked-by: Jiri Olsa Link: https://lore.kernel.org/bpf/20240207070102.335167-1-yonghong.song@lin= ux.dev Signed-off-by: Sasha Levin --- include/linux/filter.h | 21 ++++++++++++--------- kernel/bpf/helpers.c | 4 ++-- 2 files changed, 14 insertions(+), 11 deletions(-) diff --git a/include/linux/filter.h b/include/linux/filter.h index 11407e9e606db..0bec300b2e516 100644 --- a/include/linux/filter.h +++ b/include/linux/filter.h @@ -476,24 +476,27 @@ static inline bool insn_is_zext(const struct bpf_insn= *insn) __BPF_MAP(n, __BPF_DECL_ARGS, __BPF_N, u64, __ur_1, u64, __ur_2, \ u64, __ur_3, u64, __ur_4, u64, __ur_5) =20 -#define BPF_CALL_x(x, name, ...) \ +#define BPF_CALL_x(x, attr, name, ...) \ static __always_inline \ u64 ____##name(__BPF_MAP(x, __BPF_DECL_ARGS, __BPF_V, __VA_ARGS__)); \ typedef u64 (*btf_##name)(__BPF_MAP(x, __BPF_DECL_ARGS, __BPF_V, __VA_ARG= S__)); \ - u64 name(__BPF_REG(x, __BPF_DECL_REGS, __BPF_N, __VA_ARGS__)); \ - u64 name(__BPF_REG(x, __BPF_DECL_REGS, __BPF_N, __VA_ARGS__)) \ + attr u64 name(__BPF_REG(x, __BPF_DECL_REGS, __BPF_N, __VA_ARGS__)); \ + attr u64 name(__BPF_REG(x, __BPF_DECL_REGS, __BPF_N, __VA_ARGS__)) \ { \ return ((btf_##name)____##name)(__BPF_MAP(x,__BPF_CAST,__BPF_N,__VA_ARGS= __));\ } \ static __always_inline \ u64 ____##name(__BPF_MAP(x, __BPF_DECL_ARGS, __BPF_V, __VA_ARGS__)) =20 -#define BPF_CALL_0(name, ...) BPF_CALL_x(0, name, __VA_ARGS__) -#define BPF_CALL_1(name, ...) BPF_CALL_x(1, name, __VA_ARGS__) -#define BPF_CALL_2(name, ...) BPF_CALL_x(2, name, __VA_ARGS__) -#define BPF_CALL_3(name, ...) BPF_CALL_x(3, name, __VA_ARGS__) -#define BPF_CALL_4(name, ...) BPF_CALL_x(4, name, __VA_ARGS__) -#define BPF_CALL_5(name, ...) BPF_CALL_x(5, name, __VA_ARGS__) +#define __NOATTR +#define BPF_CALL_0(name, ...) BPF_CALL_x(0, __NOATTR, name, __VA_ARGS__) +#define BPF_CALL_1(name, ...) BPF_CALL_x(1, __NOATTR, name, __VA_ARGS__) +#define BPF_CALL_2(name, ...) BPF_CALL_x(2, __NOATTR, name, __VA_ARGS__) +#define BPF_CALL_3(name, ...) BPF_CALL_x(3, __NOATTR, name, __VA_ARGS__) +#define BPF_CALL_4(name, ...) BPF_CALL_x(4, __NOATTR, name, __VA_ARGS__) +#define BPF_CALL_5(name, ...) BPF_CALL_x(5, __NOATTR, name, __VA_ARGS__) + +#define NOTRACE_BPF_CALL_1(name, ...) BPF_CALL_x(1, notrace, name, __VA_AR= GS__) =20 #define bpf_ctx_range(TYPE, MEMBER) \ offsetof(TYPE, MEMBER) ... offsetofend(TYPE, MEMBER) - 1 diff --git a/kernel/bpf/helpers.c b/kernel/bpf/helpers.c index 4ba3dc621a345..9bfb4685d0684 100644 --- a/kernel/bpf/helpers.c +++ b/kernel/bpf/helpers.c @@ -271,7 +271,7 @@ static inline void __bpf_spin_lock_irqsave(struct bpf_s= pin_lock *lock) __this_cpu_write(irqsave_flags, flags); } =20 -notrace BPF_CALL_1(bpf_spin_lock, struct bpf_spin_lock *, lock) +NOTRACE_BPF_CALL_1(bpf_spin_lock, struct bpf_spin_lock *, lock) { __bpf_spin_lock_irqsave(lock); return 0; @@ -293,7 +293,7 @@ static inline void __bpf_spin_unlock_irqrestore(struct = bpf_spin_lock *lock) local_irq_restore(flags); } =20 -notrace BPF_CALL_1(bpf_spin_unlock, struct bpf_spin_lock *, lock) +NOTRACE_BPF_CALL_1(bpf_spin_unlock, struct bpf_spin_lock *, lock) { __bpf_spin_unlock_irqrestore(lock); return 0; --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 59EEF1448C3; Sun, 24 Mar 2024 23:47:29 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324049; cv=none; b=mRoemQ2Sm6QoatjT3tOT+ohevBb5RV6POFRAqBBlsVYCBFK9w3sccHEsDiJAKip2Q8fFwJjcg6LcTFZCMZchVPLMpp5FwEZ+Vi2ztYAI7mq69fbex984rs55fZE3ZBxO5r9u9RiTQCdn88QzixpmBqEG/HUcE3fjiltZjqq3uug= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324049; c=relaxed/simple; bh=0ZFE6rldCefp0YbHux493Yl25byG2FGE9Ywou34Xt10=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=oGWVJbD0pweXQCY8zi+Z3q6KDMwhXVsbR/lgZMgNCuvfSWbHanjckHUMdaHPCZ/0RlVCCWk60huKcLOwvI/vKrllG89cEXTwv/Gzb9ZpjHKRSsCBQj9wrrPF/VKl0zVB6+P+fvm+hUlbHFxyExXTR64d890/uyIma4iGk2ugvqw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=mm5St4VO; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="mm5St4VO" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 41C32C433B1; Sun, 24 Mar 2024 23:47:28 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324048; bh=0ZFE6rldCefp0YbHux493Yl25byG2FGE9Ywou34Xt10=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=mm5St4VOlFaBMaEJjwlpeOkkBU8Asz3Lc7GQ6l0YP0OhakSlkUtpHHLggdc6ddtRD m9mdRJlkW8+NFM57x27Zo9tncoBndA7WwC949klr53/Jq68Q+Ng1hNLAZ9Hw2xDRlf m37CWbcPe/V0KPr5zQgrdKOMXTVixcw88TI9pxqpA/YuUkOfNeAr8zTwKX2XYIUIGU MZs5scYidf/+iLbG9wQeDjX3sUeoNWd0Tv9zEQM3pNUM/ar+6nrOyyh4lx0pEirYCi GpCgaz33GM1utHyaJFcowWX21IFrlPGyUmOZVO4/KTqWuVpk8fZQBiZhYAYVqMinV2 fcq2thLFMxnKg== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Bjorn Andersson , Vinod Koul , Sasha Levin Subject: [PATCH 5.4 049/183] arm64: dts: qcom: db820c: Move non-soc entries out of /soc Date: Sun, 24 Mar 2024 19:44:22 -0400 Message-ID: <20240324234638.1355609-50-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Bjorn Andersson [ Upstream commit f978d45b4aaba6c8e9ad2406147be67f8f733c42 ] The USB id pins and wlan regulator are not platform devices, so move them out of /soc Acked-by: Vinod Koul Signed-off-by: Bjorn Andersson Stable-dep-of: 68c4c20848d7 ("arm64: dts: qcom: msm8996: Define UFS UniPro = clock limits") Signed-off-by: Sasha Levin --- arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi | 58 ++++++++++---------- 1 file changed, 29 insertions(+), 29 deletions(-) diff --git a/arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi b/arch/arm64/boot= /dts/qcom/apq8096-db820c.dtsi index dba3488492f1b..da2f01eb3be2c 100644 --- a/arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi +++ b/arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi @@ -399,13 +399,6 @@ dwc3@6a00000 { }; }; =20 - usb3_id: usb3-id { - compatible =3D "linux,extcon-usb-gpio"; - id-gpio =3D <&pm8994_gpios 22 GPIO_ACTIVE_HIGH>; - pinctrl-names =3D "default"; - pinctrl-0 =3D <&usb3_vbus_det_gpio>; - }; - usb@76f8800 { status =3D "okay"; extcon =3D <&usb2_id>; @@ -417,28 +410,6 @@ dwc3@7600000 { }; }; =20 - usb2_id: usb2-id { - compatible =3D "linux,extcon-usb-gpio"; - id-gpio =3D <&pmi8994_gpios 6 GPIO_ACTIVE_HIGH>; - pinctrl-names =3D "default"; - pinctrl-0 =3D <&usb2_vbus_det_gpio>; - }; - - wlan_en: wlan-en-1-8v { - pinctrl-names =3D "default"; - pinctrl-0 =3D <&wlan_en_gpios>; - compatible =3D "regulator-fixed"; - regulator-name =3D "wlan-en-regulator"; - regulator-min-microvolt =3D <1800000>; - regulator-max-microvolt =3D <1800000>; - - gpio =3D <&pm8994_gpios 8 0>; - - /* WLAN card specific delay */ - startup-delay-us =3D <70000>; - enable-active-high; - }; - agnoc@0 { pcie@600000 { status =3D "okay"; @@ -667,6 +638,35 @@ l32 { }; }; }; + + usb2_id: usb2-id { + compatible =3D "linux,extcon-usb-gpio"; + id-gpio =3D <&pmi8994_gpios 6 GPIO_ACTIVE_HIGH>; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&usb2_vbus_det_gpio>; + }; + + usb3_id: usb3-id { + compatible =3D "linux,extcon-usb-gpio"; + id-gpio =3D <&pm8994_gpios 22 GPIO_ACTIVE_HIGH>; + pinctrl-names =3D "default"; + pinctrl-0 =3D <&usb3_vbus_det_gpio>; + }; + + wlan_en: wlan-en-1-8v { + pinctrl-names =3D "default"; + pinctrl-0 =3D <&wlan_en_gpios>; + compatible =3D "regulator-fixed"; + regulator-name =3D "wlan-en-regulator"; + regulator-min-microvolt =3D <1800000>; + regulator-max-microvolt =3D <1800000>; + + gpio =3D <&pm8994_gpios 8 0>; + + /* WLAN card specific delay */ + startup-delay-us =3D <70000>; + enable-active-high; + }; }; =20 &spmi_bus { --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 04200180A68; Sun, 24 Mar 2024 23:47:30 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324051; cv=none; b=oou3OAyYVcdBGNs5rAOhzBi/lDRbLPFo4fACPR9ulyzBidY+zm62bMWajMIo3/kMShnE/uDePQdy+u8jJbqeEA8QjL9SP7BkwZFIwy2LHgwCFdaPspZplq5xZrdJdQGorT/xx8muL/CYH6Y7ZGHsozz+q3+tmyb51A1hsVYDSPo= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324051; c=relaxed/simple; bh=jYDTbR26PJRInBYcYizCpWjuJC+jhpRY45ethz54KGs=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=DGj7Y68gfnfHWYrkyMX5aa0SMcGJYu+bReXfIWCkA+szOEgupnBSzoSeDyaSNOQQaNdRnNgY0J6cKhNdmznCWz0BJjV7vwIwYEo7u/hk4aoXxq3iVcMIdatnruH2PWSDBudEndHUqMYLDEKwu+vpQjAfjYmXS3IVwk955GBHkeg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=MGg8DQUm; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="MGg8DQUm" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 2860FC433C7; Sun, 24 Mar 2024 23:47:29 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324049; bh=jYDTbR26PJRInBYcYizCpWjuJC+jhpRY45ethz54KGs=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=MGg8DQUmCe/iLfoEUKntVtQfyLV5Kci5uLe0ELTkO4nWiuSfLBPCLycmdagdjTdXj iCNJDi3Xonxnshfvn0j8q5CmfY65O/M8RYcVEiWPRU0glT3MmUcdD6/kwhyqRbni5q 4ElVZxafQM4TmJ5nh72K4CN/09IFkSYsVk4bYacSFdccoa+3s9yMrjiyC2EJuTuVng 0qrkAxMppS4hjIYXJrQ6Wg+A4wF5tTo6Yo3ZxYtSXKtTasYT84cdbgnElyM24oHxxY Nml+2Fyk4jQWoqckkARSkP7f9Vi2RQcAhgkoAtZ4SgTTiKAL3fWGj4zhJoa7YHGgyK 7soqs04lkn25Q== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Bjorn Andersson , Vinod Koul , Sasha Levin Subject: [PATCH 5.4 050/183] arm64: dts: qcom: msm8996: Use node references in db820c Date: Sun, 24 Mar 2024 19:44:23 -0400 Message-ID: <20240324234638.1355609-51-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Bjorn Andersson [ Upstream commit 75b77d6492eb5e582e17618b71f62140faf2de29 ] Instead of mimicing the structure of the platform, reference nodes by their label in apq8096-db820c.dtsi. Add labels in msm8996.dtsi where necessary. Acked-by: Vinod Koul Signed-off-by: Bjorn Andersson Stable-dep-of: 68c4c20848d7 ("arm64: dts: qcom: msm8996: Define UFS UniPro = clock limits") Signed-off-by: Sasha Levin --- arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi | 691 +++++++++---------- arch/arm64/boot/dts/qcom/msm8996.dtsi | 4 +- 2 files changed, 341 insertions(+), 354 deletions(-) diff --git a/arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi b/arch/arm64/boot= /dts/qcom/apq8096-db820c.dtsi index da2f01eb3be2c..44ec3eb1c8e85 100644 --- a/arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi +++ b/arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi @@ -77,396 +77,383 @@ div1_mclk: divclk1 { enable-gpios =3D <&pm8994_gpios 15 0>; }; }; +}; =20 - soc { - serial@7570000 { - label =3D "BT-UART"; - status =3D "okay"; - pinctrl-names =3D "default", "sleep"; - pinctrl-0 =3D <&blsp1_uart1_default>; - pinctrl-1 =3D <&blsp1_uart1_sleep>; +&blsp1_uart1 { + label =3D "BT-UART"; + status =3D "okay"; + pinctrl-names =3D "default", "sleep"; + pinctrl-0 =3D <&blsp1_uart1_default>; + pinctrl-1 =3D <&blsp1_uart1_sleep>; =20 - bluetooth { - compatible =3D "qcom,qca6174-bt"; + bluetooth { + compatible =3D "qcom,qca6174-bt"; =20 - /* bt_disable_n gpio */ - enable-gpios =3D <&pm8994_gpios 19 GPIO_ACTIVE_HIGH>; + /* bt_disable_n gpio */ + enable-gpios =3D <&pm8994_gpios 19 GPIO_ACTIVE_HIGH>; =20 - clocks =3D <&divclk4>; - }; - }; + clocks =3D <&divclk4>; + }; +}; =20 - serial@75b0000 { - label =3D "LS-UART1"; - status =3D "okay"; - pinctrl-names =3D "default", "sleep"; - pinctrl-0 =3D <&blsp2_uart1_2pins_default>; - pinctrl-1 =3D <&blsp2_uart1_2pins_sleep>; - }; +&blsp2_uart1 { + label =3D "LS-UART1"; + status =3D "okay"; + pinctrl-names =3D "default", "sleep"; + pinctrl-0 =3D <&blsp2_uart1_2pins_default>; + pinctrl-1 =3D <&blsp2_uart1_2pins_sleep>; +}; =20 - serial@75b1000 { - label =3D "LS-UART0"; - status =3D "disabled"; - pinctrl-names =3D "default", "sleep"; - pinctrl-0 =3D <&blsp2_uart2_4pins_default>; - pinctrl-1 =3D <&blsp2_uart2_4pins_sleep>; - }; +&blsp2_uart2 { + label =3D "LS-UART0"; + status =3D "disabled"; + pinctrl-names =3D "default", "sleep"; + pinctrl-0 =3D <&blsp2_uart2_4pins_default>; + pinctrl-1 =3D <&blsp2_uart2_4pins_sleep>; +}; =20 - i2c@7577000 { - /* On Low speed expansion */ - label =3D "LS-I2C0"; - status =3D "okay"; - }; +&blsp1_i2c2 { + /* On Low speed expansion */ + label =3D "LS-I2C0"; + status =3D "okay"; +}; =20 - i2c@75b6000 { - /* On Low speed expansion */ - label =3D "LS-I2C1"; - status =3D "okay"; - }; +&blsp2_i2c1 { + /* On Low speed expansion */ + label =3D "LS-I2C1"; + status =3D "okay"; +}; =20 - spi@7575000 { - /* On Low speed expansion */ - label =3D "LS-SPI0"; - status =3D "okay"; - }; +&blsp1_spi0 { + /* On Low speed expansion */ + label =3D "LS-SPI0"; + status =3D "okay"; +}; =20 - i2c@75b5000 { - /* On High speed expansion */ - label =3D "HS-I2C2"; - status =3D "okay"; - }; +&blsp2_i2c0 { + /* On High speed expansion */ + label =3D "HS-I2C2"; + status =3D "okay"; +}; =20 - spi@75ba000{ - /* On High speed expansion */ - label =3D "HS-SPI1"; - status =3D "okay"; - }; +&blsp2_spi5 { + /* On High speed expansion */ + label =3D "HS-SPI1"; + status =3D "okay"; +}; =20 - sdhci@74a4900 { - /* External SD card */ - pinctrl-names =3D "default", "sleep"; - pinctrl-0 =3D <&sdc2_clk_on &sdc2_cmd_on &sdc2_data_on &sdc2_cd_on>; - pinctrl-1 =3D <&sdc2_clk_off &sdc2_cmd_off &sdc2_data_off &sdc2_cd_off>; - cd-gpios =3D <&msmgpio 38 0x1>; - vmmc-supply =3D <&pm8994_l21>; - vqmmc-supply =3D <&pm8994_l13>; - status =3D "okay"; - }; +&sdhc2 { + /* External SD card */ + pinctrl-names =3D "default", "sleep"; + pinctrl-0 =3D <&sdc2_clk_on &sdc2_cmd_on &sdc2_data_on &sdc2_cd_on>; + pinctrl-1 =3D <&sdc2_clk_off &sdc2_cmd_off &sdc2_data_off &sdc2_cd_off>; + cd-gpios =3D <&msmgpio 38 0x1>; + vmmc-supply =3D <&pm8994_l21>; + vqmmc-supply =3D <&pm8994_l13>; + status =3D "okay"; +}; =20 - phy@627000 { - status =3D "okay"; - }; +&ufsphy { + status =3D "okay"; +}; =20 - ufshc@624000 { - status =3D "okay"; - }; +&ufshc { + status =3D "okay"; +}; =20 - pinctrl@1010000 { - gpio-line-names =3D - "[SPI0_DOUT]", /* GPIO_0, BLSP1_SPI_MOSI, LSEC pin 14 */ - "[SPI0_DIN]", /* GPIO_1, BLSP1_SPI_MISO, LSEC pin 10 */ - "[SPI0_CS]", /* GPIO_2, BLSP1_SPI_CS_N, LSEC pin 12 */ - "[SPI0_SCLK]", /* GPIO_3, BLSP1_SPI_CLK, LSEC pin 8 */ - "[UART1_TxD]", /* GPIO_4, BLSP8_UART_TX, LSEC pin 11 */ - "[UART1_RxD]", /* GPIO_5, BLSP8_UART_RX, LSEC pin 13 */ - "[I2C1_SDA]", /* GPIO_6, BLSP8_I2C_SDA, LSEC pin 21 */ - "[I2C1_SCL]", /* GPIO_7, BLSP8_I2C_SCL, LSEC pin 19 */ - "GPIO-H", /* GPIO_8, LCD0_RESET_N, LSEC pin 30 */ - "TP93", /* GPIO_9 */ - "GPIO-G", /* GPIO_10, MDP_VSYNC_P, LSEC pin 29 */ - "[MDP_VSYNC_S]", /* GPIO_11, S HSEC pin 55 */ - "NC", /* GPIO_12 */ - "[CSI0_MCLK]", /* GPIO_13, CAM_MCLK0, P HSEC pin 15 */ - "[CAM_MCLK1]", /* GPIO_14, J14 pin 11 */ - "[CSI1_MCLK]", /* GPIO_15, CAM_MCLK2, P HSEC pin 17 */ - "TP99", /* GPIO_16 */ - "[I2C2_SDA]", /* GPIO_17, CCI_I2C_SDA0, P HSEC pin 34 */ - "[I2C2_SCL]", /* GPIO_18, CCI_I2C_SCL0, P HSEC pin 32 */ - "[CCI_I2C_SDA1]", /* GPIO_19, S HSEC pin 38 */ - "[CCI_I2C_SCL1]", /* GPIO_20, S HSEC pin 36 */ - "FLASH_STROBE_EN", /* GPIO_21, S HSEC pin 5 */ - "FLASH_STROBE_TRIG", /* GPIO_22, S HSEC pin 1 */ - "GPIO-K", /* GPIO_23, CAM2_RST_N, LSEC pin 33 */ - "GPIO-D", /* GPIO_24, LSEC pin 26 */ - "GPIO-I", /* GPIO_25, CAM0_RST_N, LSEC pin 31 */ - "GPIO-J", /* GPIO_26, CAM0_STANDBY_N, LSEC pin 32 */ - "BLSP6_I2C_SDA", /* GPIO_27 */ - "BLSP6_I2C_SCL", /* GPIO_28 */ - "GPIO-B", /* GPIO_29, TS0_RESET_N, LSEC pin 24 */ - "GPIO30", /* GPIO_30, S HSEC pin 4 */ - "HDMI_CEC", /* GPIO_31 */ - "HDMI_DDC_CLOCK", /* GPIO_32 */ - "HDMI_DDC_DATA", /* GPIO_33 */ - "HDMI_HOT_PLUG_DETECT", /* GPIO_34 */ - "PCIE0_RST_N", /* GPIO_35 */ - "PCIE0_CLKREQ_N", /* GPIO_36 */ - "PCIE0_WAKE", /* GPIO_37 */ - "SD_CARD_DET_N", /* GPIO_38 */ - "TSIF1_SYNC", /* GPIO_39, S HSEC pin 48 */ - "W_DISABLE_N", /* GPIO_40 */ - "[BLSP9_UART_TX]", /* GPIO_41 */ - "[BLSP9_UART_RX]", /* GPIO_42 */ - "[BLSP2_UART_CTS_N]", /* GPIO_43 */ - "[BLSP2_UART_RFR_N]", /* GPIO_44 */ - "[BLSP3_UART_TX]", /* GPIO_45 */ - "[BLSP3_UART_RX]", /* GPIO_46 */ - "[I2C0_SDA]", /* GPIO_47, LS_I2C0_SDA, LSEC pin 17 */ - "[I2C0_SCL]", /* GPIO_48, LS_I2C0_SCL, LSEC pin 15 */ - "[UART0_TxD]", /* GPIO_49, BLSP9_UART_TX, LSEC pin 5 */ - "[UART0_RxD]", /* GPIO_50, BLSP9_UART_RX, LSEC pin 7 */ - "[UART0_CTS]", /* GPIO_51, BLSP9_UART_CTS_N, LSEC pin 3 */ - "[UART0_RTS]", /* GPIO_52, BLSP9_UART_RFR_N, LSEC pin 9 */ - "[CODEC_INT1_N]", /* GPIO_53 */ - "[CODEC_INT2_N]", /* GPIO_54 */ - "[BLSP7_I2C_SDA]", /* GPIO_55 */ - "[BLSP7_I2C_SCL]", /* GPIO_56 */ - "MI2S_MCLK", /* GPIO_57, S HSEC pin 3 */ - "[PCM_CLK]", /* GPIO_58, QUA_MI2S_SCK, LSEC pin 18 */ - "[PCM_FS]", /* GPIO_59, QUA_MI2S_WS, LSEC pin 16 */ - "[PCM_DO]", /* GPIO_60, QUA_MI2S_DATA0, LSEC pin 20 */ - "[PCM_DI]", /* GPIO_61, QUA_MI2S_DATA1, LSEC pin 22 */ - "GPIO-E", /* GPIO_62, LSEC pin 27 */ - "TP87", /* GPIO_63 */ - "[CODEC_RST_N]", /* GPIO_64 */ - "[PCM1_CLK]", /* GPIO_65 */ - "[PCM1_SYNC]", /* GPIO_66 */ - "[PCM1_DIN]", /* GPIO_67 */ - "[PCM1_DOUT]", /* GPIO_68 */ - "AUDIO_REF_CLK", /* GPIO_69 */ - "SLIMBUS_CLK", /* GPIO_70 */ - "SLIMBUS_DATA0", /* GPIO_71 */ - "SLIMBUS_DATA1", /* GPIO_72 */ - "NC", /* GPIO_73 */ - "NC", /* GPIO_74 */ - "NC", /* GPIO_75 */ - "NC", /* GPIO_76 */ - "TP94", /* GPIO_77 */ - "NC", /* GPIO_78 */ - "TP95", /* GPIO_79 */ - "GPIO-A", /* GPIO_80, MEMS_RESET_N, LSEC pin 23 */ - "TP88", /* GPIO_81 */ - "TP89", /* GPIO_82 */ - "TP90", /* GPIO_83 */ - "TP91", /* GPIO_84 */ - "[SD_DAT0]", /* GPIO_85, BLSP12_SPI_MOSI, P HSEC pin 1 */ - "[SD_CMD]", /* GPIO_86, BLSP12_SPI_MISO, P HSEC pin 11 */ - "[SD_DAT3]", /* GPIO_87, BLSP12_SPI_CS_N, P HSEC pin 7 */ - "[SD_SCLK]", /* GPIO_88, BLSP12_SPI_CLK, P HSEC pin 9 */ - "TSIF1_CLK", /* GPIO_89, S HSEC pin 42 */ - "TSIF1_EN", /* GPIO_90, S HSEC pin 46 */ - "TSIF1_DATA", /* GPIO_91, S HSEC pin 44 */ - "NC", /* GPIO_92 */ - "TSIF2_CLK", /* GPIO_93, S HSEC pin 52 */ - "TSIF2_EN", /* GPIO_94, S HSEC pin 56 */ - "TSIF2_DATA", /* GPIO_95, S HSEC pin 54 */ - "TSIF2_SYNC", /* GPIO_96, S HSEC pin 58 */ - "NC", /* GPIO_97 */ - "CAM1_STANDBY_N", /* GPIO_98 */ - "NC", /* GPIO_99 */ - "NC", /* GPIO_100 */ - "[LCD1_RESET_N]", /* GPIO_101, S HSEC pin 51 */ - "BOOT_CONFIG1", /* GPIO_102 */ - "USB_HUB_RESET", /* GPIO_103 */ - "CAM1_RST_N", /* GPIO_104 */ - "NC", /* GPIO_105 */ - "NC", /* GPIO_106 */ - "NC", /* GPIO_107 */ - "NC", /* GPIO_108 */ - "NC", /* GPIO_109 */ - "NC", /* GPIO_110 */ - "NC", /* GPIO_111 */ - "NC", /* GPIO_112 */ - "PMI8994_BUA", /* GPIO_113 */ - "PCIE2_RST_N", /* GPIO_114 */ - "PCIE2_CLKREQ_N", /* GPIO_115 */ - "PCIE2_WAKE", /* GPIO_116 */ - "SSC_IRQ_0", /* GPIO_117 */ - "SSC_IRQ_1", /* GPIO_118 */ - "SSC_IRQ_2", /* GPIO_119 */ - "NC", /* GPIO_120 */ - "GPIO121", /* GPIO_121, S HSEC pin 2 */ - "NC", /* GPIO_122 */ - "SSC_IRQ_6", /* GPIO_123 */ - "SSC_IRQ_7", /* GPIO_124 */ - "GPIO-C", /* GPIO_125, TS_INT0, LSEC pin 25 */ - "BOOT_CONFIG5", /* GPIO_126 */ - "NC", /* GPIO_127 */ - "NC", /* GPIO_128 */ - "BOOT_CONFIG7", /* GPIO_129 */ - "PCIE1_RST_N", /* GPIO_130 */ - "PCIE1_CLKREQ_N", /* GPIO_131 */ - "PCIE1_WAKE", /* GPIO_132 */ - "GPIO-L", /* GPIO_133, CAM2_STANDBY_N, LSEC pin 34 */ - "NC", /* GPIO_134 */ - "NC", /* GPIO_135 */ - "BOOT_CONFIG8", /* GPIO_136 */ - "NC", /* GPIO_137 */ - "NC", /* GPIO_138 */ - "GPS_SSBI2", /* GPIO_139 */ - "GPS_SSBI1", /* GPIO_140 */ - "NC", /* GPIO_141 */ - "NC", /* GPIO_142 */ - "NC", /* GPIO_143 */ - "BOOT_CONFIG6", /* GPIO_144 */ - "NC", /* GPIO_145 */ - "NC", /* GPIO_146 */ - "NC", /* GPIO_147 */ - "NC", /* GPIO_148 */ - "NC"; /* GPIO_149 */ - }; +&msmgpio { + gpio-line-names =3D + "[SPI0_DOUT]", /* GPIO_0, BLSP1_SPI_MOSI, LSEC pin 14 */ + "[SPI0_DIN]", /* GPIO_1, BLSP1_SPI_MISO, LSEC pin 10 */ + "[SPI0_CS]", /* GPIO_2, BLSP1_SPI_CS_N, LSEC pin 12 */ + "[SPI0_SCLK]", /* GPIO_3, BLSP1_SPI_CLK, LSEC pin 8 */ + "[UART1_TxD]", /* GPIO_4, BLSP8_UART_TX, LSEC pin 11 */ + "[UART1_RxD]", /* GPIO_5, BLSP8_UART_RX, LSEC pin 13 */ + "[I2C1_SDA]", /* GPIO_6, BLSP8_I2C_SDA, LSEC pin 21 */ + "[I2C1_SCL]", /* GPIO_7, BLSP8_I2C_SCL, LSEC pin 19 */ + "GPIO-H", /* GPIO_8, LCD0_RESET_N, LSEC pin 30 */ + "TP93", /* GPIO_9 */ + "GPIO-G", /* GPIO_10, MDP_VSYNC_P, LSEC pin 29 */ + "[MDP_VSYNC_S]", /* GPIO_11, S HSEC pin 55 */ + "NC", /* GPIO_12 */ + "[CSI0_MCLK]", /* GPIO_13, CAM_MCLK0, P HSEC pin 15 */ + "[CAM_MCLK1]", /* GPIO_14, J14 pin 11 */ + "[CSI1_MCLK]", /* GPIO_15, CAM_MCLK2, P HSEC pin 17 */ + "TP99", /* GPIO_16 */ + "[I2C2_SDA]", /* GPIO_17, CCI_I2C_SDA0, P HSEC pin 34 */ + "[I2C2_SCL]", /* GPIO_18, CCI_I2C_SCL0, P HSEC pin 32 */ + "[CCI_I2C_SDA1]", /* GPIO_19, S HSEC pin 38 */ + "[CCI_I2C_SCL1]", /* GPIO_20, S HSEC pin 36 */ + "FLASH_STROBE_EN", /* GPIO_21, S HSEC pin 5 */ + "FLASH_STROBE_TRIG", /* GPIO_22, S HSEC pin 1 */ + "GPIO-K", /* GPIO_23, CAM2_RST_N, LSEC pin 33 */ + "GPIO-D", /* GPIO_24, LSEC pin 26 */ + "GPIO-I", /* GPIO_25, CAM0_RST_N, LSEC pin 31 */ + "GPIO-J", /* GPIO_26, CAM0_STANDBY_N, LSEC pin 32 */ + "BLSP6_I2C_SDA", /* GPIO_27 */ + "BLSP6_I2C_SCL", /* GPIO_28 */ + "GPIO-B", /* GPIO_29, TS0_RESET_N, LSEC pin 24 */ + "GPIO30", /* GPIO_30, S HSEC pin 4 */ + "HDMI_CEC", /* GPIO_31 */ + "HDMI_DDC_CLOCK", /* GPIO_32 */ + "HDMI_DDC_DATA", /* GPIO_33 */ + "HDMI_HOT_PLUG_DETECT", /* GPIO_34 */ + "PCIE0_RST_N", /* GPIO_35 */ + "PCIE0_CLKREQ_N", /* GPIO_36 */ + "PCIE0_WAKE", /* GPIO_37 */ + "SD_CARD_DET_N", /* GPIO_38 */ + "TSIF1_SYNC", /* GPIO_39, S HSEC pin 48 */ + "W_DISABLE_N", /* GPIO_40 */ + "[BLSP9_UART_TX]", /* GPIO_41 */ + "[BLSP9_UART_RX]", /* GPIO_42 */ + "[BLSP2_UART_CTS_N]", /* GPIO_43 */ + "[BLSP2_UART_RFR_N]", /* GPIO_44 */ + "[BLSP3_UART_TX]", /* GPIO_45 */ + "[BLSP3_UART_RX]", /* GPIO_46 */ + "[I2C0_SDA]", /* GPIO_47, LS_I2C0_SDA, LSEC pin 17 */ + "[I2C0_SCL]", /* GPIO_48, LS_I2C0_SCL, LSEC pin 15 */ + "[UART0_TxD]", /* GPIO_49, BLSP9_UART_TX, LSEC pin 5 */ + "[UART0_RxD]", /* GPIO_50, BLSP9_UART_RX, LSEC pin 7 */ + "[UART0_CTS]", /* GPIO_51, BLSP9_UART_CTS_N, LSEC pin 3 */ + "[UART0_RTS]", /* GPIO_52, BLSP9_UART_RFR_N, LSEC pin 9 */ + "[CODEC_INT1_N]", /* GPIO_53 */ + "[CODEC_INT2_N]", /* GPIO_54 */ + "[BLSP7_I2C_SDA]", /* GPIO_55 */ + "[BLSP7_I2C_SCL]", /* GPIO_56 */ + "MI2S_MCLK", /* GPIO_57, S HSEC pin 3 */ + "[PCM_CLK]", /* GPIO_58, QUA_MI2S_SCK, LSEC pin 18 */ + "[PCM_FS]", /* GPIO_59, QUA_MI2S_WS, LSEC pin 16 */ + "[PCM_DO]", /* GPIO_60, QUA_MI2S_DATA0, LSEC pin 20 */ + "[PCM_DI]", /* GPIO_61, QUA_MI2S_DATA1, LSEC pin 22 */ + "GPIO-E", /* GPIO_62, LSEC pin 27 */ + "TP87", /* GPIO_63 */ + "[CODEC_RST_N]", /* GPIO_64 */ + "[PCM1_CLK]", /* GPIO_65 */ + "[PCM1_SYNC]", /* GPIO_66 */ + "[PCM1_DIN]", /* GPIO_67 */ + "[PCM1_DOUT]", /* GPIO_68 */ + "AUDIO_REF_CLK", /* GPIO_69 */ + "SLIMBUS_CLK", /* GPIO_70 */ + "SLIMBUS_DATA0", /* GPIO_71 */ + "SLIMBUS_DATA1", /* GPIO_72 */ + "NC", /* GPIO_73 */ + "NC", /* GPIO_74 */ + "NC", /* GPIO_75 */ + "NC", /* GPIO_76 */ + "TP94", /* GPIO_77 */ + "NC", /* GPIO_78 */ + "TP95", /* GPIO_79 */ + "GPIO-A", /* GPIO_80, MEMS_RESET_N, LSEC pin 23 */ + "TP88", /* GPIO_81 */ + "TP89", /* GPIO_82 */ + "TP90", /* GPIO_83 */ + "TP91", /* GPIO_84 */ + "[SD_DAT0]", /* GPIO_85, BLSP12_SPI_MOSI, P HSEC pin 1 */ + "[SD_CMD]", /* GPIO_86, BLSP12_SPI_MISO, P HSEC pin 11 */ + "[SD_DAT3]", /* GPIO_87, BLSP12_SPI_CS_N, P HSEC pin 7 */ + "[SD_SCLK]", /* GPIO_88, BLSP12_SPI_CLK, P HSEC pin 9 */ + "TSIF1_CLK", /* GPIO_89, S HSEC pin 42 */ + "TSIF1_EN", /* GPIO_90, S HSEC pin 46 */ + "TSIF1_DATA", /* GPIO_91, S HSEC pin 44 */ + "NC", /* GPIO_92 */ + "TSIF2_CLK", /* GPIO_93, S HSEC pin 52 */ + "TSIF2_EN", /* GPIO_94, S HSEC pin 56 */ + "TSIF2_DATA", /* GPIO_95, S HSEC pin 54 */ + "TSIF2_SYNC", /* GPIO_96, S HSEC pin 58 */ + "NC", /* GPIO_97 */ + "CAM1_STANDBY_N", /* GPIO_98 */ + "NC", /* GPIO_99 */ + "NC", /* GPIO_100 */ + "[LCD1_RESET_N]", /* GPIO_101, S HSEC pin 51 */ + "BOOT_CONFIG1", /* GPIO_102 */ + "USB_HUB_RESET", /* GPIO_103 */ + "CAM1_RST_N", /* GPIO_104 */ + "NC", /* GPIO_105 */ + "NC", /* GPIO_106 */ + "NC", /* GPIO_107 */ + "NC", /* GPIO_108 */ + "NC", /* GPIO_109 */ + "NC", /* GPIO_110 */ + "NC", /* GPIO_111 */ + "NC", /* GPIO_112 */ + "PMI8994_BUA", /* GPIO_113 */ + "PCIE2_RST_N", /* GPIO_114 */ + "PCIE2_CLKREQ_N", /* GPIO_115 */ + "PCIE2_WAKE", /* GPIO_116 */ + "SSC_IRQ_0", /* GPIO_117 */ + "SSC_IRQ_1", /* GPIO_118 */ + "SSC_IRQ_2", /* GPIO_119 */ + "NC", /* GPIO_120 */ + "GPIO121", /* GPIO_121, S HSEC pin 2 */ + "NC", /* GPIO_122 */ + "SSC_IRQ_6", /* GPIO_123 */ + "SSC_IRQ_7", /* GPIO_124 */ + "GPIO-C", /* GPIO_125, TS_INT0, LSEC pin 25 */ + "BOOT_CONFIG5", /* GPIO_126 */ + "NC", /* GPIO_127 */ + "NC", /* GPIO_128 */ + "BOOT_CONFIG7", /* GPIO_129 */ + "PCIE1_RST_N", /* GPIO_130 */ + "PCIE1_CLKREQ_N", /* GPIO_131 */ + "PCIE1_WAKE", /* GPIO_132 */ + "GPIO-L", /* GPIO_133, CAM2_STANDBY_N, LSEC pin 34 */ + "NC", /* GPIO_134 */ + "NC", /* GPIO_135 */ + "BOOT_CONFIG8", /* GPIO_136 */ + "NC", /* GPIO_137 */ + "NC", /* GPIO_138 */ + "GPS_SSBI2", /* GPIO_139 */ + "GPS_SSBI1", /* GPIO_140 */ + "NC", /* GPIO_141 */ + "NC", /* GPIO_142 */ + "NC", /* GPIO_143 */ + "BOOT_CONFIG6", /* GPIO_144 */ + "NC", /* GPIO_145 */ + "NC", /* GPIO_146 */ + "NC", /* GPIO_147 */ + "NC", /* GPIO_148 */ + "NC"; /* GPIO_149 */ +}; =20 - qcom,spmi@400f000 { - pmic@0 { - gpios@c000 { - gpio-line-names =3D - "NC", - "KEY_VOLP_N", - "NC", - "BL1_PWM", - "GPIO-F", /* BL0_PWM, LSEC pin 28 */ - "BL1_EN", - "NC", - "WLAN_EN", - "NC", - "NC", - "NC", - "NC", - "NC", - "NC", - "DIVCLK1", - "DIVCLK2", - "DIVCLK3", - "DIVCLK4", - "BT_EN", - "PMIC_SLB", - "PMIC_BUA", - "USB_VBUS_DET"; - }; - - mpps@a000 { - gpio-line-names =3D - "VDDPX_BIAS", - "WIFI_LED", - "NC", - "BT_LED", - "PM_MPP05", - "PM_MPP06", - "PM_MPP07", - "NC"; - }; - }; +&pm8994_gpios { + gpio-line-names =3D + "NC", + "KEY_VOLP_N", + "NC", + "BL1_PWM", + "GPIO-F", /* BL0_PWM, LSEC pin 28 */ + "BL1_EN", + "NC", + "WLAN_EN", + "NC", + "NC", + "NC", + "NC", + "NC", + "NC", + "DIVCLK1", + "DIVCLK2", + "DIVCLK3", + "DIVCLK4", + "BT_EN", + "PMIC_SLB", + "PMIC_BUA", + "USB_VBUS_DET"; +}; =20 - pmic@2 { - gpios@c000 { - gpio-line-names =3D - "NC", - "SPKR_AMP_EN1", - "SPKR_AMP_EN2", - "TP61", - "NC", - "USB2_VBUS_DET", - "NC", - "NC", - "NC", - "NC"; - }; - }; - }; +&pm8994_mpps { + gpio-line-names =3D + "VDDPX_BIAS", + "WIFI_LED", + "NC", + "BT_LED", + "PM_MPP05", + "PM_MPP06", + "PM_MPP07", + "NC"; +}; =20 - phy@34000 { - status =3D "okay"; - }; +&pmi8994_gpios { + gpio-line-names =3D + "NC", + "SPKR_AMP_EN1", + "SPKR_AMP_EN2", + "TP61", + "NC", + "USB2_VBUS_DET", + "NC", + "NC", + "NC", + "NC"; +}; =20 - phy@7410000 { - status =3D "okay"; - }; +&pcie_phy { + status =3D "okay"; +}; =20 - phy@7411000 { - status =3D "okay"; - }; +&usb3phy { + status =3D "okay"; +}; =20 - phy@7412000 { - status =3D "okay"; - }; +&hsusb_phy1 { + status =3D "okay"; +}; =20 - usb@6af8800 { - status =3D "okay"; - extcon =3D <&usb3_id>; +&hsusb_phy2 { + status =3D "okay"; +}; =20 - dwc3@6a00000 { - extcon =3D <&usb3_id>; - dr_mode =3D "otg"; - }; - }; +&usb3 { + status =3D "okay"; + extcon =3D <&usb3_id>; =20 - usb@76f8800 { - status =3D "okay"; - extcon =3D <&usb2_id>; + dwc3@6a00000 { + extcon =3D <&usb3_id>; + dr_mode =3D "otg"; + }; +}; =20 - dwc3@7600000 { - extcon =3D <&usb2_id>; - dr_mode =3D "otg"; - maximum-speed =3D "high-speed"; - }; - }; +&usb2 { + status =3D "okay"; + extcon =3D <&usb2_id>; =20 - agnoc@0 { - pcie@600000 { - status =3D "okay"; - perst-gpio =3D <&msmgpio 35 GPIO_ACTIVE_LOW>; - vddpe-3v3-supply =3D <&wlan_en>; - }; + dwc3@7600000 { + extcon =3D <&usb2_id>; + dr_mode =3D "otg"; + maximum-speed =3D "high-speed"; + }; +}; =20 - pcie@608000 { - status =3D "okay"; - perst-gpio =3D <&msmgpio 130 GPIO_ACTIVE_LOW>; - }; +&pcie0 { + status =3D "okay"; + perst-gpio =3D <&msmgpio 35 GPIO_ACTIVE_LOW>; + vddpe-3v3-supply =3D <&wlan_en>; +}; =20 - pcie@610000 { - status =3D "okay"; - perst-gpio =3D <&msmgpio 114 GPIO_ACTIVE_LOW>; - }; - }; +&pcie1 { + status =3D "okay"; + perst-gpio =3D <&msmgpio 130 GPIO_ACTIVE_LOW>; +}; =20 - slim_msm: slim@91c0000 { - ngd@1 { - wcd9335: codec@1{ - clock-names =3D "mclk", "slimbus"; - clocks =3D <&div1_mclk>, - <&rpmcc RPM_SMD_BB_CLK1>; - }; - }; - }; +&pcie2 { + status =3D "okay"; + perst-gpio =3D <&msmgpio 114 GPIO_ACTIVE_LOW>; +}; =20 - mdss@900000 { - status =3D "okay"; +&wcd9335 { + clock-names =3D "mclk", "slimbus"; + clocks =3D <&div1_mclk>, + <&rpmcc RPM_SMD_BB_CLK1>; +}; =20 - mdp@901000 { - status =3D "okay"; - }; +&mdss { + status =3D "okay"; +}; =20 - hdmi-phy@9a0600 { - status =3D "okay"; +&mdp { + status =3D "okay"; +}; =20 - vddio-supply =3D <&pm8994_l12>; - vcca-supply =3D <&pm8994_l28>; - #phy-cells =3D <0>; - }; +&hdmi_phy { + status =3D "okay"; =20 - hdmi-tx@9a0000 { - status =3D "okay"; + vddio-supply =3D <&pm8994_l12>; + vcca-supply =3D <&pm8994_l28>; + #phy-cells =3D <0>; +}; =20 - pinctrl-names =3D "default", "sleep"; - pinctrl-0 =3D <&hdmi_hpd_active &hdmi_ddc_active>; - pinctrl-1 =3D <&hdmi_hpd_suspend &hdmi_ddc_suspend>; +&hdmi { + status =3D "okay"; =20 - core-vdda-supply =3D <&pm8994_l12>; - core-vcc-supply =3D <&pm8994_s4>; - }; - }; - }; + pinctrl-names =3D "default", "sleep"; + pinctrl-0 =3D <&hdmi_hpd_active &hdmi_ddc_active>; + pinctrl-1 =3D <&hdmi_hpd_suspend &hdmi_ddc_suspend>; =20 + core-vdda-supply =3D <&pm8994_l12>; + core-vcc-supply =3D <&pm8994_s4>; +}; =20 +/ { gpio_keys { compatible =3D "gpio-keys"; #address-cells =3D <1>; diff --git a/arch/arm64/boot/dts/qcom/msm8996.dtsi b/arch/arm64/boot/dts/qc= om/msm8996.dtsi index fb9556f57f55b..bbdb0fcd818e9 100644 --- a/arch/arm64/boot/dts/qcom/msm8996.dtsi +++ b/arch/arm64/boot/dts/qcom/msm8996.dtsi @@ -1464,7 +1464,7 @@ gpu_speed_bin: gpu_speed_bin@133 { }; }; =20 - phy@34000 { + pcie_phy: phy@34000 { compatible =3D "qcom,msm8996-qmp-pcie-phy"; reg =3D <0x34000 0x488>; #clock-cells =3D <1>; @@ -1526,7 +1526,7 @@ pciephy_2: lane@37000 { }; }; =20 - phy@7410000 { + usb3phy: phy@7410000 { compatible =3D "qcom,msm8996-qmp-usb3-phy"; reg =3D <0x7410000 0x1c4>; #clock-cells =3D <1>; --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id EC9D4180A65; Sun, 24 Mar 2024 23:47:30 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324051; cv=none; b=b2GY8MY96WIyffaC7ZYfOkf6gP9h4hd+j1HvM0O3eaQdzIApWPC8NEfq+1v0K8RP7s5F9WyQhGI0mA4BlgP+9r5/kWxCqRxm3YcTZJedLSRUtNCVerwXFWrHxW5wQ3rzWcM7s69uigXpwM3TEECvNdtQK6V5y89NwuMYldLIKfk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324051; c=relaxed/simple; bh=KRSv81TwsExJ0F2eGrzklWLug+2TnfZgZsSX2hbjJL4=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=mlioxP781NOd2BAwpA3TqPOPoURytLRaVI6frWQzm9eSG8Q7C2ulzv0+ZYPr6oXGvUe5+tAw94SxBJ7Py9Weg0vkV/lDZ1uJpbn1malJVP/dWO6/EAt+TZCS23RJXSy82Lgkw+ZCBqkPa3Nd0Do1mLRhALCybqkCjHILZE9G0GM= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=jePNKDMC; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="jePNKDMC" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 2930AC43399; Sun, 24 Mar 2024 23:47:30 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324050; bh=KRSv81TwsExJ0F2eGrzklWLug+2TnfZgZsSX2hbjJL4=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=jePNKDMCD76bPHDbiVVgk7bnuaZvxsne5H6IR4Gsztmb69BKjjIKpYcSb7Yp/kGIA Fs1Uxz4RWopD5L5U5QTCDvNqekN5SLQt5OOFRiCxgb7NKFwGx5xOc0SRAtci1leJXe bcC6pBret2fb2acvZijWT75jUo/4Hc5cxw3LlwVZDKZZj+woBDTDgt5PixjxkjMfVr ohtQN6lxT0/yhtaKQIq90h4zHpMqR2AIDOt3DpHD/XPI5REmJTlI2XL/+CNIaaOLCW l1Px4hiPRZMma5ug9OD4zMOPsYFVUzj7l+vZ/OioGIO5B4U5kclx4nzf/rAdZfXF1I +CX/xy0SCkKpg== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Bjorn Andersson , Vinod Koul , Sasha Levin Subject: [PATCH 5.4 051/183] arm64: dts: qcom: msm8996: Move regulator consumers to db820c Date: Sun, 24 Mar 2024 19:44:24 -0400 Message-ID: <20240324234638.1355609-52-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Bjorn Andersson [ Upstream commit 80884431430995254257848d1a05266a2b791c58 ] Supplies for the various components in the SoC depends on board layout, so move the supply definitions to db820c.dtsi instead of carrying them in the platform dtsi. Acked-by: Vinod Koul Signed-off-by: Bjorn Andersson Stable-dep-of: 68c4c20848d7 ("arm64: dts: qcom: msm8996: Define UFS UniPro = clock limits") Signed-off-by: Sasha Levin --- arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi | 44 ++++++++++++++++++++ arch/arm64/boot/dts/qcom/msm8996.dtsi | 44 -------------------- 2 files changed, 44 insertions(+), 44 deletions(-) diff --git a/arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi b/arch/arm64/boot= /dts/qcom/apq8096-db820c.dtsi index 44ec3eb1c8e85..21e029afb27bb 100644 --- a/arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi +++ b/arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi @@ -142,6 +142,10 @@ &blsp2_spi5 { status =3D "okay"; }; =20 +&camss { + vdda-supply =3D <&pm8994_l2>; +}; + &sdhc2 { /* External SD card */ pinctrl-names =3D "default", "sleep"; @@ -155,10 +159,28 @@ &sdhc2 { =20 &ufsphy { status =3D "okay"; + + vdda-phy-supply =3D <&pm8994_l28>; + vdda-pll-supply =3D <&pm8994_l12>; + + vdda-phy-max-microamp =3D <18380>; + vdda-pll-max-microamp =3D <9440>; + + vddp-ref-clk-supply =3D <&pm8994_l25>; + vddp-ref-clk-max-microamp =3D <100>; + vddp-ref-clk-always-on; }; =20 &ufshc { status =3D "okay"; + + vcc-supply =3D <&pm8994_l20>; + vccq-supply =3D <&pm8994_l25>; + vccq2-supply =3D <&pm8994_s4>; + + vcc-max-microamp =3D <600000>; + vccq-max-microamp =3D <450000>; + vccq2-max-microamp =3D <450000>; }; =20 &msmgpio { @@ -369,18 +391,31 @@ &pmi8994_gpios { =20 &pcie_phy { status =3D "okay"; + + vdda-phy-supply =3D <&pm8994_l28>; + vdda-pll-supply =3D <&pm8994_l12>; }; =20 &usb3phy { status =3D "okay"; + + vdda-phy-supply =3D <&pm8994_l28>; + vdda-pll-supply =3D <&pm8994_l12>; + }; =20 &hsusb_phy1 { status =3D "okay"; + + vdda-pll-supply =3D <&pm8994_l12>; + vdda-phy-dpdm-supply =3D <&pm8994_l24>; }; =20 &hsusb_phy2 { status =3D "okay"; + + vdda-pll-supply =3D <&pm8994_l12>; + vdda-phy-dpdm-supply =3D <&pm8994_l24>; }; =20 &usb3 { @@ -408,22 +443,31 @@ &pcie0 { status =3D "okay"; perst-gpio =3D <&msmgpio 35 GPIO_ACTIVE_LOW>; vddpe-3v3-supply =3D <&wlan_en>; + vdda-supply =3D <&pm8994_l28>; }; =20 &pcie1 { status =3D "okay"; perst-gpio =3D <&msmgpio 130 GPIO_ACTIVE_LOW>; + vdda-supply =3D <&pm8994_l28>; }; =20 &pcie2 { status =3D "okay"; perst-gpio =3D <&msmgpio 114 GPIO_ACTIVE_LOW>; + vdda-supply =3D <&pm8994_l28>; }; =20 &wcd9335 { clock-names =3D "mclk", "slimbus"; clocks =3D <&div1_mclk>, <&rpmcc RPM_SMD_BB_CLK1>; + + vdd-buck-supply =3D <&pm8994_s4>; + vdd-buck-sido-supply =3D <&pm8994_s4>; + vdd-tx-supply =3D <&pm8994_s4>; + vdd-rx-supply =3D <&pm8994_s4>; + vdd-io-supply =3D <&pm8994_s4>; }; =20 &mdss { diff --git a/arch/arm64/boot/dts/qcom/msm8996.dtsi b/arch/arm64/boot/dts/qc= om/msm8996.dtsi index bbdb0fcd818e9..bcadbdf2690e3 100644 --- a/arch/arm64/boot/dts/qcom/msm8996.dtsi +++ b/arch/arm64/boot/dts/qcom/msm8996.dtsi @@ -1343,16 +1343,6 @@ ufsphy: phy@627000 { reg-names =3D "phy_mem"; #phy-cells =3D <0>; =20 - vdda-phy-supply =3D <&pm8994_l28>; - vdda-pll-supply =3D <&pm8994_l12>; - - vdda-phy-max-microamp =3D <18380>; - vdda-pll-max-microamp =3D <9440>; - - vddp-ref-clk-supply =3D <&pm8994_l25>; - vddp-ref-clk-max-microamp =3D <100>; - vddp-ref-clk-always-on; - clock-names =3D "ref_clk_src", "ref_clk"; clocks =3D <&rpmcc RPM_SMD_LN_BB_CLK>, <&gcc GCC_UFS_CLKREF_CLK>; @@ -1368,14 +1358,6 @@ ufshc: ufshc@624000 { phys =3D <&ufsphy>; phy-names =3D "ufsphy"; =20 - vcc-supply =3D <&pm8994_l20>; - vccq-supply =3D <&pm8994_l25>; - vccq2-supply =3D <&pm8994_s4>; - - vcc-max-microamp =3D <600000>; - vccq-max-microamp =3D <450000>; - vccq2-max-microamp =3D <450000>; - power-domains =3D <&gcc UFS_GDSC>; =20 clock-names =3D @@ -1477,9 +1459,6 @@ pcie_phy: phy@34000 { <&gcc GCC_PCIE_CLKREF_CLK>; clock-names =3D "aux", "cfg_ahb", "ref"; =20 - vdda-phy-supply =3D <&pm8994_l28>; - vdda-pll-supply =3D <&pm8994_l12>; - resets =3D <&gcc GCC_PCIE_PHY_BCR>, <&gcc GCC_PCIE_PHY_COM_BCR>, <&gcc GCC_PCIE_PHY_COM_NOCSR_BCR>; @@ -1539,9 +1518,6 @@ usb3phy: phy@7410000 { <&gcc GCC_USB3_CLKREF_CLK>; clock-names =3D "aux", "cfg_ahb", "ref"; =20 - vdda-phy-supply =3D <&pm8994_l28>; - vdda-pll-supply =3D <&pm8994_l12>; - resets =3D <&gcc GCC_USB3_PHY_BCR>, <&gcc GCC_USB3PHY_PHY_BCR>; reset-names =3D "phy", "common"; @@ -1568,9 +1544,6 @@ hsusb_phy1: phy@7411000 { <&gcc GCC_RX1_USB2_CLKREF_CLK>; clock-names =3D "cfg_ahb", "ref"; =20 - vdda-pll-supply =3D <&pm8994_l12>; - vdda-phy-dpdm-supply =3D <&pm8994_l24>; - resets =3D <&gcc GCC_QUSB2PHY_PRIM_BCR>; nvmem-cells =3D <&qusb2p_hstx_trim>; status =3D "disabled"; @@ -1585,9 +1558,6 @@ hsusb_phy2: phy@7412000 { <&gcc GCC_RX2_USB2_CLKREF_CLK>; clock-names =3D "cfg_ahb", "ref"; =20 - vdda-pll-supply =3D <&pm8994_l12>; - vdda-phy-dpdm-supply =3D <&pm8994_l24>; - resets =3D <&gcc GCC_QUSB2PHY_SEC_BCR>; nvmem-cells =3D <&qusb2s_hstx_trim>; status =3D "disabled"; @@ -1795,7 +1765,6 @@ camss: camss@a00000 { "vfe1_stream", "vfe_ahb", "vfe_axi"; - vdda-supply =3D <&pm8994_l2>; iommus =3D <&vfe_smmu 0>, <&vfe_smmu 1>, <&vfe_smmu 2>, @@ -1907,9 +1876,6 @@ pcie0: pcie@600000 { pinctrl-0 =3D <&pcie0_clkreq_default &pcie0_perst_default &pcie0_wake_= default>; pinctrl-1 =3D <&pcie0_clkreq_sleep &pcie0_perst_default &pcie0_wake_sl= eep>; =20 - - vdda-supply =3D <&pm8994_l28>; - linux,pci-domain =3D <0>; =20 clocks =3D <&gcc GCC_PCIE_0_PIPE_CLK>, @@ -1962,8 +1928,6 @@ pcie1: pcie@608000 { pinctrl-0 =3D <&pcie1_clkreq_default &pcie1_perst_default &pcie1_wake_= default>; pinctrl-1 =3D <&pcie1_clkreq_sleep &pcie1_perst_default &pcie1_wake_sl= eep>; =20 - - vdda-supply =3D <&pm8994_l28>; linux,pci-domain =3D <1>; =20 clocks =3D <&gcc GCC_PCIE_1_PIPE_CLK>, @@ -2015,8 +1979,6 @@ pcie2: pcie@610000 { pinctrl-0 =3D <&pcie2_clkreq_default &pcie2_perst_default &pcie2_wake_= default>; pinctrl-1 =3D <&pcie2_clkreq_sleep &pcie2_perst_default &pcie2_wake_sl= eep >; =20 - vdda-supply =3D <&pm8994_l28>; - linux,pci-domain =3D <2>; clocks =3D <&gcc GCC_PCIE_2_PIPE_CLK>, <&gcc GCC_PCIE_2_AUX_CLK>, @@ -2081,12 +2043,6 @@ wcd9335: codec@1{ =20 slim-ifc-dev =3D <&tasha_ifd>; =20 - vdd-buck-supply =3D <&pm8994_s4>; - vdd-buck-sido-supply =3D <&pm8994_s4>; - vdd-tx-supply =3D <&pm8994_s4>; - vdd-rx-supply =3D <&pm8994_s4>; - vdd-io-supply =3D <&pm8994_s4>; - #sound-dai-cells =3D <1>; }; }; --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id CBD72180A73; Sun, 24 Mar 2024 23:47:31 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324052; cv=none; b=tJb3IGVKixPb9zN1Mz8OCHZvC0glNlRHptDHeHULO55F/nN0Qwtc4smY8Krsbkkc5vo1XnpWrqXZv5N6voOxLRIC3F7ypB6U6S4fdf7b7g0A1+UDZIe3l5h5DIvQTOKgp/2jxizioON9H/GqoDl+KM4Lq+63LAr9ZA7p72k7OcY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324052; c=relaxed/simple; bh=wvf3sIIuiuGAOXj+OmT4D5WiGqoZZJa8njw+E8Nec1Y=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=dMhAMmsAkAyyfvZfzX6e+CtQY4O5FEou8YhYZRhJmMoYCtKePvFdOsdb7eON2ifXbOG8uKWEgdNszS+CmzccaRHpcPOgbL8NBvE3dJ+ZBjPwkerrkk9IBLmuV0d1rS7vMFiHkoT2wQgAmb6XDmsIAfhPEGJbT87ZlFqrSoZEBsg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=Vj+FLEY2; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="Vj+FLEY2" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 114FDC433B2; Sun, 24 Mar 2024 23:47:30 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324051; bh=wvf3sIIuiuGAOXj+OmT4D5WiGqoZZJa8njw+E8Nec1Y=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Vj+FLEY2Uyms/+46TinJac8HJRBfKptai2E5enSpqzsJWnC0F3V0euXoN4Dza7t2B RvXGWqqEibgDn8wL+9Kce3SUjXEWnmGLOojHWxtLnvEAogN8tppynD+i5e029B8naZ DYVOBkZzeU4Z8V3iMpJJb0K4CBlu4I1Amo0ihTIBHLPFI+jrByc2WT93TsrsGKBGFK 2aL8AzJ4PpWS2r3mY/9huey7daA+VhcwIStahkZhFBFmnMoeYc4fYJ0safx3kV91z5 T3LfS2sNS9sfbjSfmprOBkihojppvU8haSq7TAn4aV+6/YUfYm/W4bZuWsjQKUg7I6 U0deVj/PdBpDA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Bjorn Andersson , Vinod Koul , Sasha Levin Subject: [PATCH 5.4 052/183] arm64: dts: qcom: msm8996: Pad addresses Date: Sun, 24 Mar 2024 19:44:25 -0400 Message-ID: <20240324234638.1355609-53-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Bjorn Andersson [ Upstream commit 86f6d6225e5e546ffeaae6db597f4aabe50d26c1 ] Pad all addresses in msm8996.dtsi to 8 digits, in order to make it easier to ensure ordering when adding new nodes. Acked-by: Vinod Koul Signed-off-by: Bjorn Andersson Stable-dep-of: 68c4c20848d7 ("arm64: dts: qcom: msm8996: Define UFS UniPro = clock limits") Signed-off-by: Sasha Levin --- arch/arm64/boot/dts/qcom/msm8996.dtsi | 144 +++++++++++++------------- 1 file changed, 72 insertions(+), 72 deletions(-) diff --git a/arch/arm64/boot/dts/qcom/msm8996.dtsi b/arch/arm64/boot/dts/qc= om/msm8996.dtsi index bcadbdf2690e3..8bfb897b0e81b 100644 --- a/arch/arm64/boot/dts/qcom/msm8996.dtsi +++ b/arch/arm64/boot/dts/qcom/msm8996.dtsi @@ -584,7 +584,7 @@ soc: soc { =20 rpm_msg_ram: memory@68000 { compatible =3D "qcom,rpm-msg-ram"; - reg =3D <0x68000 0x6000>; + reg =3D <0x00068000 0x6000>; }; =20 rng: rng@83000 { @@ -596,28 +596,28 @@ rng: rng@83000 { =20 tcsr_mutex_regs: syscon@740000 { compatible =3D "syscon"; - reg =3D <0x740000 0x20000>; + reg =3D <0x00740000 0x20000>; }; =20 tsens0: thermal-sensor@4a9000 { compatible =3D "qcom,msm8996-tsens"; - reg =3D <0x4a9000 0x1000>, /* TM */ - <0x4a8000 0x1000>; /* SROT */ + reg =3D <0x004a9000 0x1000>, /* TM */ + <0x004a8000 0x1000>; /* SROT */ #qcom,sensors =3D <13>; #thermal-sensor-cells =3D <1>; }; =20 tsens1: thermal-sensor@4ad000 { compatible =3D "qcom,msm8996-tsens"; - reg =3D <0x4ad000 0x1000>, /* TM */ - <0x4ac000 0x1000>; /* SROT */ + reg =3D <0x004ad000 0x1000>, /* TM */ + <0x004ac000 0x1000>; /* SROT */ #qcom,sensors =3D <8>; #thermal-sensor-cells =3D <1>; }; =20 tcsr: syscon@7a0000 { compatible =3D "qcom,tcsr-msm8996", "syscon"; - reg =3D <0x7a0000 0x18000>; + reg =3D <0x007a0000 0x18000>; }; =20 intc: interrupt-controller@9bc0000 { @@ -633,7 +633,7 @@ intc: interrupt-controller@9bc0000 { =20 apcs_glb: mailbox@9820000 { compatible =3D "qcom,msm8996-apcs-hmss-global"; - reg =3D <0x9820000 0x1000>; + reg =3D <0x09820000 0x1000>; =20 #mbox-cells =3D <1>; }; @@ -643,7 +643,7 @@ gcc: clock-controller@300000 { #clock-cells =3D <1>; #reset-cells =3D <1>; #power-domain-cells =3D <1>; - reg =3D <0x300000 0x90000>; + reg =3D <0x00300000 0x90000>; }; =20 stm@3002000 { @@ -1124,7 +1124,7 @@ apss_merge_funnel_out: endpoint { =20 kryocc: clock-controller@6400000 { compatible =3D "qcom,apcc-msm8996"; - reg =3D <0x6400000 0x90000>; + reg =3D <0x06400000 0x90000>; #clock-cells =3D <1>; }; =20 @@ -1170,7 +1170,7 @@ blsp2_i2c0: i2c@75b5000 { =20 blsp2_uart1: serial@75b0000 { compatible =3D "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm"; - reg =3D <0x75b0000 0x1000>; + reg =3D <0x075b0000 0x1000>; interrupts =3D ; clocks =3D <&gcc GCC_BLSP2_UART2_APPS_CLK>, <&gcc GCC_BLSP2_AHB_CLK>; @@ -1236,7 +1236,7 @@ blsp2_spi5: spi@75ba000{ sdhc2: sdhci@74a4900 { status =3D "disabled"; compatible =3D "qcom,sdhci-msm-v4"; - reg =3D <0x74a4900 0x314>, <0x74a4000 0x800>; + reg =3D <0x074a4900 0x314>, <0x074a4000 0x800>; reg-names =3D "hc_mem", "core_mem"; =20 interrupts =3D <0 125 IRQ_TYPE_LEVEL_HIGH>, @@ -1321,11 +1321,11 @@ frame@98c0000 { =20 spmi_bus: qcom,spmi@400f000 { compatible =3D "qcom,spmi-pmic-arb"; - reg =3D <0x400f000 0x1000>, - <0x4400000 0x800000>, - <0x4c00000 0x800000>, - <0x5800000 0x200000>, - <0x400a000 0x002100>; + reg =3D <0x0400f000 0x1000>, + <0x04400000 0x800000>, + <0x04c00000 0x800000>, + <0x05800000 0x200000>, + <0x0400a000 0x002100>; reg-names =3D "core", "chnls", "obsrvr", "intr", "cnfg"; interrupt-names =3D "periph_irq"; interrupts =3D ; @@ -1339,7 +1339,7 @@ spmi_bus: qcom,spmi@400f000 { =20 ufsphy: phy@627000 { compatible =3D "qcom,msm8996-ufs-phy-qmp-14nm"; - reg =3D <0x627000 0xda8>; + reg =3D <0x00627000 0xda8>; reg-names =3D "phy_mem"; #phy-cells =3D <0>; =20 @@ -1352,7 +1352,7 @@ ufsphy: phy@627000 { =20 ufshc: ufshc@624000 { compatible =3D "qcom,ufshc"; - reg =3D <0x624000 0x2500>; + reg =3D <0x00624000 0x2500>; interrupts =3D ; =20 phys =3D <&ufsphy>; @@ -1411,7 +1411,7 @@ mmcc: clock-controller@8c0000 { #clock-cells =3D <1>; #reset-cells =3D <1>; #power-domain-cells =3D <1>; - reg =3D <0x8c0000 0x40000>; + reg =3D <0x008c0000 0x40000>; assigned-clocks =3D <&mmcc MMPLL9_PLL>, <&mmcc MMPLL1_PLL>, <&mmcc MMPLL3_PLL>, @@ -1426,7 +1426,7 @@ mmcc: clock-controller@8c0000 { =20 qfprom@74000 { compatible =3D "qcom,qfprom"; - reg =3D <0x74000 0x8ff>; + reg =3D <0x00074000 0x8ff>; #address-cells =3D <1>; #size-cells =3D <1>; =20 @@ -1448,7 +1448,7 @@ gpu_speed_bin: gpu_speed_bin@133 { =20 pcie_phy: phy@34000 { compatible =3D "qcom,msm8996-qmp-pcie-phy"; - reg =3D <0x34000 0x488>; + reg =3D <0x00034000 0x488>; #clock-cells =3D <1>; #address-cells =3D <1>; #size-cells =3D <1>; @@ -1466,9 +1466,9 @@ pcie_phy: phy@34000 { status =3D "disabled"; =20 pciephy_0: lane@35000 { - reg =3D <0x035000 0x130>, - <0x035200 0x200>, - <0x035400 0x1dc>; + reg =3D <0x00035000 0x130>, + <0x00035200 0x200>, + <0x00035400 0x1dc>; #phy-cells =3D <0>; =20 clock-output-names =3D "pcie_0_pipe_clk_src"; @@ -1479,9 +1479,9 @@ pciephy_0: lane@35000 { }; =20 pciephy_1: lane@36000 { - reg =3D <0x036000 0x130>, - <0x036200 0x200>, - <0x036400 0x1dc>; + reg =3D <0x00036000 0x130>, + <0x00036200 0x200>, + <0x00036400 0x1dc>; #phy-cells =3D <0>; =20 clock-output-names =3D "pcie_1_pipe_clk_src"; @@ -1492,9 +1492,9 @@ pciephy_1: lane@36000 { }; =20 pciephy_2: lane@37000 { - reg =3D <0x037000 0x130>, - <0x037200 0x200>, - <0x037400 0x1dc>; + reg =3D <0x00037000 0x130>, + <0x00037200 0x200>, + <0x00037400 0x1dc>; #phy-cells =3D <0>; =20 clock-output-names =3D "pcie_2_pipe_clk_src"; @@ -1507,7 +1507,7 @@ pciephy_2: lane@37000 { =20 usb3phy: phy@7410000 { compatible =3D "qcom,msm8996-qmp-usb3-phy"; - reg =3D <0x7410000 0x1c4>; + reg =3D <0x07410000 0x1c4>; #clock-cells =3D <1>; #address-cells =3D <1>; #size-cells =3D <1>; @@ -1524,9 +1524,9 @@ usb3phy: phy@7410000 { status =3D "disabled"; =20 ssusb_phy_0: lane@7410200 { - reg =3D <0x7410200 0x200>, - <0x7410400 0x130>, - <0x7410600 0x1a8>; + reg =3D <0x07410200 0x200>, + <0x07410400 0x130>, + <0x07410600 0x1a8>; #phy-cells =3D <0>; =20 clock-output-names =3D "usb3_phy_pipe_clk_src"; @@ -1537,7 +1537,7 @@ ssusb_phy_0: lane@7410200 { =20 hsusb_phy1: phy@7411000 { compatible =3D "qcom,msm8996-qusb2-phy"; - reg =3D <0x7411000 0x180>; + reg =3D <0x07411000 0x180>; #phy-cells =3D <0>; =20 clocks =3D <&gcc GCC_USB_PHY_CFG_AHB2PHY_CLK>, @@ -1551,7 +1551,7 @@ hsusb_phy1: phy@7411000 { =20 hsusb_phy2: phy@7412000 { compatible =3D "qcom,msm8996-qusb2-phy"; - reg =3D <0x7412000 0x180>; + reg =3D <0x07412000 0x180>; #phy-cells =3D <0>; =20 clocks =3D <&gcc GCC_USB_PHY_CFG_AHB2PHY_CLK>, @@ -1565,7 +1565,7 @@ hsusb_phy2: phy@7412000 { =20 usb2: usb@76f8800 { compatible =3D "qcom,msm8996-dwc3", "qcom,dwc3"; - reg =3D <0x76f8800 0x400>; + reg =3D <0x076f8800 0x400>; #address-cells =3D <1>; #size-cells =3D <1>; ranges; @@ -1585,7 +1585,7 @@ usb2: usb@76f8800 { =20 dwc3@7600000 { compatible =3D "snps,dwc3"; - reg =3D <0x7600000 0xcc00>; + reg =3D <0x07600000 0xcc00>; interrupts =3D <0 138 IRQ_TYPE_LEVEL_HIGH>; phys =3D <&hsusb_phy2>; phy-names =3D "usb2-phy"; @@ -1596,7 +1596,7 @@ dwc3@7600000 { =20 usb3: usb@6af8800 { compatible =3D "qcom,msm8996-dwc3", "qcom,dwc3"; - reg =3D <0x6af8800 0x400>; + reg =3D <0x06af8800 0x400>; #address-cells =3D <1>; #size-cells =3D <1>; ranges; @@ -1617,7 +1617,7 @@ usb3: usb@6af8800 { =20 dwc3@6a00000 { compatible =3D "snps,dwc3"; - reg =3D <0x6a00000 0xcc00>; + reg =3D <0x06a00000 0xcc00>; interrupts =3D <0 131 IRQ_TYPE_LEVEL_HIGH>; phys =3D <&hsusb_phy1>, <&ssusb_phy_0>; phy-names =3D "usb2-phy", "usb3-phy"; @@ -1628,7 +1628,7 @@ dwc3@6a00000 { =20 vfe_smmu: iommu@da0000 { compatible =3D "qcom,msm8996-smmu-v2", "qcom,smmu-v2"; - reg =3D <0xda0000 0x10000>; + reg =3D <0x00da0000 0x10000>; =20 #global-interrupts =3D <1>; interrupts =3D , @@ -1644,20 +1644,20 @@ vfe_smmu: iommu@da0000 { =20 camss: camss@a00000 { compatible =3D "qcom,msm8996-camss"; - reg =3D <0xa34000 0x1000>, - <0xa00030 0x4>, - <0xa35000 0x1000>, - <0xa00038 0x4>, - <0xa36000 0x1000>, - <0xa00040 0x4>, - <0xa30000 0x100>, - <0xa30400 0x100>, - <0xa30800 0x100>, - <0xa30c00 0x100>, - <0xa31000 0x500>, - <0xa00020 0x10>, - <0xa10000 0x1000>, - <0xa14000 0x1000>; + reg =3D <0x00a34000 0x1000>, + <0x00a00030 0x4>, + <0x00a35000 0x1000>, + <0x00a00038 0x4>, + <0x00a36000 0x1000>, + <0x00a00040 0x4>, + <0x00a30000 0x100>, + <0x00a30400 0x100>, + <0x00a30800 0x100>, + <0x00a30c00 0x100>, + <0x00a31000 0x500>, + <0x00a00020 0x10>, + <0x00a10000 0x1000>, + <0x00a14000 0x1000>; reg-names =3D "csiphy0", "csiphy0_clk_mux", "csiphy1", @@ -1778,7 +1778,7 @@ ports { =20 adreno_smmu: iommu@b40000 { compatible =3D "qcom,msm8996-smmu-v2", "qcom,smmu-v2"; - reg =3D <0xb40000 0x10000>; + reg =3D <0x00b40000 0x10000>; =20 #global-interrupts =3D <1>; interrupts =3D , @@ -1795,7 +1795,7 @@ adreno_smmu: iommu@b40000 { =20 mdp_smmu: iommu@d00000 { compatible =3D "qcom,msm8996-smmu-v2", "qcom,smmu-v2"; - reg =3D <0xd00000 0x10000>; + reg =3D <0x00d00000 0x10000>; =20 #global-interrupts =3D <1>; interrupts =3D , @@ -1811,7 +1811,7 @@ mdp_smmu: iommu@d00000 { =20 lpass_q6_smmu: iommu@1600000 { compatible =3D "qcom,msm8996-smmu-v2", "qcom,smmu-v2"; - reg =3D <0x1600000 0x20000>; + reg =3D <0x01600000 0x20000>; #iommu-cells =3D <1>; power-domains =3D <&gcc HLOS1_VOTE_LPASS_CORE_GDSC>; =20 @@ -1998,7 +1998,7 @@ slimbam:dma@9184000 { compatible =3D "qcom,bam-v1.7.0"; qcom,controlled-remotely; - reg =3D <0x9184000 0x32000>; + reg =3D <0x09184000 0x32000>; num-channels =3D <31>; interrupts =3D <0 164 IRQ_TYPE_LEVEL_HIGH>; #dma-cells =3D <1>; @@ -2008,7 +2008,7 @@ slimbam:dma@9184000 =20 slim_msm: slim@91c0000 { compatible =3D "qcom,slim-ngd-v1.5.0"; - reg =3D <0x91c0000 0x2C000>; + reg =3D <0x091c0000 0x2C000>; reg-names =3D "ctrl"; interrupts =3D <0 163 IRQ_TYPE_LEVEL_HIGH>; dmas =3D <&slimbam 3>, <&slimbam 4>, @@ -2052,7 +2052,7 @@ gpu@b00000 { compatible =3D "qcom,adreno-530.2", "qcom,adreno"; #stream-id-cells =3D <16>; =20 - reg =3D <0xb00000 0x3f000>; + reg =3D <0x00b00000 0x3f000>; reg-names =3D "kgsl_3d0_reg_memory"; =20 interrupts =3D <0 300 IRQ_TYPE_LEVEL_HIGH>; @@ -2123,9 +2123,9 @@ zap-shader { mdss: mdss@900000 { compatible =3D "qcom,mdss"; =20 - reg =3D <0x900000 0x1000>, - <0x9b0000 0x1040>, - <0x9b8000 0x1040>; + reg =3D <0x00900000 0x1000>, + <0x009b0000 0x1040>, + <0x009b8000 0x1040>; reg-names =3D "mdss_phys", "vbif_phys", "vbif_nrt_phys"; @@ -2145,7 +2145,7 @@ mdss: mdss@900000 { =20 mdp: mdp@901000 { compatible =3D "qcom,mdp5"; - reg =3D <0x901000 0x90000>; + reg =3D <0x00901000 0x90000>; reg-names =3D "mdp_phys"; =20 interrupt-parent =3D <&mdss>; @@ -2221,12 +2221,12 @@ hdmi_in: endpoint { hdmi_phy: hdmi-phy@9a0600 { #phy-cells =3D <0>; compatible =3D "qcom,hdmi-phy-8996"; - reg =3D <0x9a0600 0x1c4>, - <0x9a0a00 0x124>, - <0x9a0c00 0x124>, - <0x9a0e00 0x124>, - <0x9a1000 0x124>, - <0x9a1200 0x0c8>; + reg =3D <0x009a0600 0x1c4>, + <0x009a0a00 0x124>, + <0x009a0c00 0x124>, + <0x009a0e00 0x124>, + <0x009a1000 0x124>, + <0x009a1200 0x0c8>; reg-names =3D "hdmi_pll", "hdmi_tx_l0", "hdmi_tx_l1", --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id AF9CD180A60; Sun, 24 Mar 2024 23:47:32 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324052; cv=none; b=HkkpH9NrRpaT3ZzFnqWCQK/2BwpJCckiCwF9hLyF/2WbO1ONtJtF8de0slzuQYXJ0wGyyqnOqUuARTdt6SpU9uobLNfBgz2riDth+xfSnzbYx6POa75eDhitAsWd/rioKJV+rNe51Z28XsWJibvr30F6fqaAaQIzLCXnyQ4ALt4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324052; c=relaxed/simple; bh=lgXP9On9Wm+u+TZ9h19CicXaNfIlQ6uLGbBbbX9/1rk=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=fmqQrmVHAWJedvRvM5yLFXwweSZY1jNu2IrAZ5IEklpWZ7LW+ea6lJqytGt/YxkeaQDWHP1tKNjYLWJDOkcEZ4cUoSTPwIzSv0WOyQHFudD24ztehZgfT7xPk3C8feGfRwEQohDrjLEMSD9jKyNyLn9r3MarX/cE7SQZnX/vfSQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=m4ITCWIq; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="m4ITCWIq" Received: by smtp.kernel.org (Postfix) with ESMTPSA id ECFB7C433F1; Sun, 24 Mar 2024 23:47:31 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324052; bh=lgXP9On9Wm+u+TZ9h19CicXaNfIlQ6uLGbBbbX9/1rk=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=m4ITCWIq9wNFUsEK8AIN2Rz5wNVFIN0E2lhyN+RRGbnliXce/vhmdrV28kGdRhECG D7ciMYZFgegH4wIbh5gOrPzsDpkxeEy68uSfiyxg+1aBijm+9FjQLjq8eGI7cOfoNb 3NO8slrAUGQDVG+W58lazdEc5+s+Te1rsn5ZlFKwXtGsAcsBCSno84pJ4ob+kw476U lKRzWXhQ+VlE76fZBsOTqoyIHyHycObHyAHXz2eQ2cFemfpvdBXvnSjbRyb6ON/udy ho+5rMCkKREQ/UPnVD7yX3/mUzHPXm3zGoCDYR7PhwylHfiI0mLy559OEDSm6a49v0 bxvupm4FqJLlA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Armin Wolf , "Rafael J . Wysocki" , Sasha Levin Subject: [PATCH 5.4 053/183] ACPI: processor_idle: Fix memory leak in acpi_processor_power_exit() Date: Sun, 24 Mar 2024 19:44:26 -0400 Message-ID: <20240324234638.1355609-54-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Armin Wolf [ Upstream commit e18afcb7b2a12b635ac10081f943fcf84ddacc51 ] After unregistering the CPU idle device, the memory associated with it is not freed, leading to a memory leak: unreferenced object 0xffff896282f6c000 (size 1024): comm "swapper/0", pid 1, jiffies 4294893170 hex dump (first 32 bytes): 00 00 00 00 0b 00 00 00 00 00 00 00 00 00 00 00 ................ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ backtrace (crc 8836a742): [] kmalloc_trace+0x29d/0x340 [] acpi_processor_power_init+0xf3/0x1c0 [] __acpi_processor_start+0xd3/0xf0 [] acpi_processor_start+0x2c/0x50 [] really_probe+0xe2/0x480 [] __driver_probe_device+0x78/0x160 [] driver_probe_device+0x1f/0x90 [] __driver_attach+0xce/0x1c0 [] bus_for_each_dev+0x70/0xc0 [] bus_add_driver+0x112/0x210 [] driver_register+0x55/0x100 [] acpi_processor_driver_init+0x3b/0xc0 [] do_one_initcall+0x41/0x300 [] kernel_init_freeable+0x320/0x470 [] kernel_init+0x16/0x1b0 [] ret_from_fork+0x2d/0x50 Fix this by freeing the CPU idle device after unregistering it. Fixes: 3d339dcbb56d ("cpuidle / ACPI : move cpuidle_device field out of the= acpi_processor_power structure") Signed-off-by: Armin Wolf Signed-off-by: Rafael J. Wysocki Signed-off-by: Sasha Levin --- drivers/acpi/processor_idle.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/acpi/processor_idle.c b/drivers/acpi/processor_idle.c index 0ea5e677f00ee..0aca77cb8301c 100644 --- a/drivers/acpi/processor_idle.c +++ b/drivers/acpi/processor_idle.c @@ -1531,6 +1531,8 @@ int acpi_processor_power_exit(struct acpi_processor *= pr) acpi_processor_registered--; if (acpi_processor_registered =3D=3D 0) cpuidle_unregister_driver(&acpi_idle_driver); + + kfree(dev); } =20 pr->flags.power_setup_done =3D 0; --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id AB1D2180A81; Sun, 24 Mar 2024 23:47:33 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324054; cv=none; b=qI0oNJaPc6BNb/QO9bmIZVg049F+Ki1cl2KO2TrX4YdLXZuibEwMW29wmvMaffsg2CIZSgVzhIRe7PUAsn7Nh3fr1Rl/LL9GbBBLjWJxLVYKwHL5LGktB7RI3jvDJr5awaPmMsd21P5672zIf8MZ68dVmJNf33F94VJuWdd384c= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324054; c=relaxed/simple; bh=6aeM9EccW5V1l59G/zhCMMLoAu+pGwX9rkHHx76rL18=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=oG77ghHGL07aSHBxEOH4ttomhlD2UW6/eK3t6GYMpSDnPU64RF+kOMWcalzMU3EUnG8Tb/5XfUK7PvN9rSPpUbJAmjqxxaKtD9sBOG9OpVK1/zlUCn6Mto/fucnF+hCWxSNlzAArfkPm3coi2JNrzSu2hHrbCaLGrhGd75SyufY= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=n6+o224s; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="n6+o224s" Received: by smtp.kernel.org (Postfix) with ESMTPSA id D327DC43390; Sun, 24 Mar 2024 23:47:32 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324053; bh=6aeM9EccW5V1l59G/zhCMMLoAu+pGwX9rkHHx76rL18=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=n6+o224sZSuV/ImooYpWTFN34tKF4GDKkV9AYv3dXNq/PQPpgY1Y+s5JHzCBaZSAb f60tdToaxkaXjCvKgTaGsEt1bXrHS+BIl36wOny20Wo901KqgHjH7cVi00OueZNsoD 8Q0HVuCkH/M7RjI2ryJHHk0o9fkG8w/HeXlleexmsGHSoWSbYJZI6B2ttTa4UGGQq+ TC+9luKUZ/qplsSEDt0JMT3c03VA8VE25pk91uN7N5Zi3cSsmhllPxOZWEFGAKR6Ay OgV/w+fO2Iz7xOmrPNlFbwEl+M/xbcUJUCXaXSNdyf7kLJYHEvE6lh5dB32S+osuUB scJZz621QGw9w== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Peter Robinson , Jon Hunter , Thierry Reding , Sasha Levin Subject: [PATCH 5.4 054/183] bus: tegra-aconnect: Update dependency to ARCH_TEGRA Date: Sun, 24 Mar 2024 19:44:27 -0400 Message-ID: <20240324234638.1355609-55-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Peter Robinson [ Upstream commit 4acd21a45c1446277e2abaece97d7fa7c2e692a9 ] Update the architecture dependency to be the generic Tegra because the driver works on the four latest Tegra generations not just Tegra210, if you build a kernel with a specific ARCH_TEGRA_xxx_SOC option that excludes Tegra210 you don't get this driver. Fixes: 46a88534afb59 ("bus: Add support for Tegra ACONNECT") Signed-off-by: Peter Robinson Cc: Jon Hunter Cc: Thierry Reding Signed-off-by: Thierry Reding Signed-off-by: Sasha Levin --- drivers/bus/Kconfig | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/drivers/bus/Kconfig b/drivers/bus/Kconfig index 47c2bb444ab4a..072dc40e29a69 100644 --- a/drivers/bus/Kconfig +++ b/drivers/bus/Kconfig @@ -136,11 +136,12 @@ config SUNXI_RSB =20 config TEGRA_ACONNECT tristate "Tegra ACONNECT Bus Driver" - depends on ARCH_TEGRA_210_SOC + depends on ARCH_TEGRA depends on OF && PM help Driver for the Tegra ACONNECT bus which is used to interface with - the devices inside the Audio Processing Engine (APE) for Tegra210. + the devices inside the Audio Processing Engine (APE) for + Tegra210 and later. =20 config TEGRA_GMI tristate "Tegra Generic Memory Interface bus driver" --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 059A1180A8F; Sun, 24 Mar 2024 23:47:35 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324056; cv=none; b=QWIa+OGutsGK1RGDi9X+MOQFpzAvpBL9vvkdUobKChqiz+FPVWxW5C5+NmlfcDspanRuZ2hPd3qwyIGhijqdosf3J0Eo24+cD7V66rj0RYtVRwctGlNHqduh1JC+L+6gs0BK4+q0ejCpScz7yCsSqXa5pXuaBXl07tR9a/R/eY0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324056; c=relaxed/simple; bh=NzjFbhFV+1szkeOU6f/PGRB/2eW54jz9i68ODl8u9+Y=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=F2Sgvwy4+eyEcd+TLLxT2JgaYGMcmKovM2kNf+3zjrTvHQQjGeigAHpwaWar3CnWGGZe706SBth0X0UuNYWpXnUGNe5X7h7j6TPjRs1x9QdZG8Bx8XiB0coiRaV2KAQwrYHSTqjjg5oaC/w4sdwBUCKGIzcLAuAl4Nmq7J4w8Io= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=lmn8lyn4; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="lmn8lyn4" Received: by smtp.kernel.org (Postfix) with ESMTPSA id D231CC43394; Sun, 24 Mar 2024 23:47:33 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324054; bh=NzjFbhFV+1szkeOU6f/PGRB/2eW54jz9i68ODl8u9+Y=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=lmn8lyn43Xe2U1jL3X9lMwoXOR4McKOln5q3RnORh2dgCQFhaJZbrfhennup2GFC6 5Mc+0HWN7PLD/HhmDZpXeE+KKS9lWFs7hdElKhhWQ2xBMKHBniGI0ZD1NB9OYj3t1U R4Hg9Us//k25Sltj5HBr3TfAUtRQRnyc9IoykqreHA3JMTYepOd2jmYecmvWtV+RpR YGjr+17AvFfSNUnCFRcN3++JPxUFw3pl78MyfULWc1rd8x8dYF2H6I/khm2dwWei1b 5ImVGIiRFvmWPUNpLm+rIbZKglGr5sDRHsJ295Y2MytDEnbWT2KZJiYmKImsVp4dY7 etnT45aVSy6+g== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Mario Limonciello , Vasant Hegde , Joerg Roedel , Sasha Levin Subject: [PATCH 5.4 055/183] iommu/amd: Mark interrupt as managed Date: Sun, 24 Mar 2024 19:44:28 -0400 Message-ID: <20240324234638.1355609-56-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Mario Limonciello [ Upstream commit 0feda94c868d396fac3b3cb14089d2d989a07c72 ] On many systems that have an AMD IOMMU the following sequence of warnings is observed during bootup. ``` pci 0000:00:00.2 can't derive routing for PCI INT A pci 0000:00:00.2: PCI INT A: not connected ``` This series of events happens because of the IOMMU initialization sequence order and the lack of _PRT entries for the IOMMU. During initialization the IOMMU driver first enables the PCI device using pci_enable_device(). This will call acpi_pci_irq_enable() which will check if the interrupt is declared in a PCI routing table (_PRT) entry. According to the PCI spec [1] these routing entries are only required under PCI root bridges: The _PRT object is required under all PCI root bridges The IOMMU is directly connected to the root complex, so there is no parent bridge to look for a _PRT entry. The first warning is emitted since no entry could be found in the hierarchy. The second warning is then emitted because the interrupt hasn't yet been configured to any value. The pin was configured in pci_read_irq() but the byte in PCI_INTERRUPT_LINE return 0xff which means "Unknown". After that sequence of events pci_enable_msi() is called and this will allocate an interrupt. That is both of these warnings are totally harmless because the IOMMU uses MSI for interrupts. To avoid even trying to probe for a _PRT entry mark the IOMMU as IRQ managed. This avoids both warnings. Link: https://uefi.org/htmlspecs/ACPI_Spec_6_4_html/06_Device_Configuration= /Device_Configuration.html?highlight=3D_prt#prt-pci-routing-table [1] Signed-off-by: Mario Limonciello Fixes: cffe0a2b5a34 ("x86, irq: Keep balance of IOAPIC pin reference count") Reviewed-by: Vasant Hegde Link: https://lore.kernel.org/r/20240122233400.1802-1-mario.limonciello@amd= .com Signed-off-by: Joerg Roedel Signed-off-by: Sasha Levin --- drivers/iommu/amd_iommu_init.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/iommu/amd_iommu_init.c b/drivers/iommu/amd_iommu_init.c index 4a9feff340da7..15e25f712f393 100644 --- a/drivers/iommu/amd_iommu_init.c +++ b/drivers/iommu/amd_iommu_init.c @@ -1745,6 +1745,9 @@ static int __init iommu_init_pci(struct amd_iommu *io= mmu) /* Prevent binding other PCI device drivers to IOMMU devices */ iommu->dev->match_driver =3D false; =20 + /* ACPI _PRT won't have an IRQ for IOMMU */ + iommu->dev->irq_managed =3D 1; + pci_read_config_dword(iommu->dev, cap_ptr + MMIO_CAP_HDR_OFFSET, &iommu->cap); pci_read_config_dword(iommu->dev, cap_ptr + MMIO_RANGE_OFFSET, --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id F4063180A8D; Sun, 24 Mar 2024 23:47:35 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324056; cv=none; b=lxcqNonQxDBxLL7atjeIAu1VJeJh1a9bBd1LAfNYPRWBvfh547t+8L16sjuUuw0gY9qFxkc2KkGXwnYuh+/WWzhGkU6dswJouaptrSvDCVJy/s9IrnMlscKGe6TgR0C8hJ1hLlKmbCfpxG+hs25dA13k9tRyX5Ff3B6RdHtUGDg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324056; c=relaxed/simple; bh=g9oUjtbgVyPfa42NId5r5PY1QsKy5NCIqsClJIdX5IE=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=J2gOozFcXDs3q9Ig3eZaxZeEvBx1l86dMPBnI/Mzg/F1G8HSdNLUprep0TgM+QX8auFJ3NoB4MH0UQwWuNw6t6F8TpDXYBYxOZQTdGoJcEB18bd+vfxrzKpgJuqSApgiqbygAokca/h3JzQV+GChHpZkTqSPR625nj4pMhWvXNc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=jcG3bf71; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="jcG3bf71" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 278F7C433C7; Sun, 24 Mar 2024 23:47:35 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324055; bh=g9oUjtbgVyPfa42NId5r5PY1QsKy5NCIqsClJIdX5IE=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=jcG3bf714F6LYp+OHYFf8DYgrPycvjOufa9XljgNsjaOsMo3eaFtZ7/Ll5KDGrxX5 ec6v9LZGJvAVCw8IcrlHClNs+ObQyFEaDOamj+OaXPDwKhGuer+0LcE4Ag+5m3FJsc 5pyzLEPghCYkkdl/4jfXbHYLvz97wXfQuaFCQAaJfP1wmMPNwgzxG4nmJLNGE8qy0k AFPtDmnJ39jKRGBPAqCqxnZhAB3lObWbrnW1N94qo5823q71CSSqw5mq7Y/I3q7qGu dYwas8Rp4nAXvEVP7DGfIxGgHQ6B3OHWFQe15zImq4K5+6TjJ64pSKTUE9QUIgd3NY lJxXSvNZ3jxeA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Arnd Bergmann , Arend van Spriel , Kalle Valo , Sasha Levin Subject: [PATCH 5.4 056/183] wifi: brcmsmac: avoid function pointer casts Date: Sun, 24 Mar 2024 19:44:29 -0400 Message-ID: <20240324234638.1355609-57-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Arnd Bergmann [ Upstream commit e1ea6db35fc3ba5ff063f097385e9f7a88c25356 ] An old cleanup went a little too far and causes a warning with clang-16 and higher as it breaks control flow integrity (KCFI) rules: drivers/net/wireless/broadcom/brcm80211/brcmsmac/phy_shim.c:64:34: error: c= ast from 'void (*)(struct brcms_phy *)' to 'void (*)(void *)' converts to i= ncompatible function type [-Werror,-Wcast-function-type-strict] 64 | brcms_init_timer(physhim->wl, (void (*)(voi= d *))fn, | ^~~~~~~~~~~~~= ~~~~~~~ Change this one instance back to passing a void pointer so it can be used with the timer callback interface. Fixes: d89a4c80601d ("staging: brcm80211: removed void * from softmac phy") Signed-off-by: Arnd Bergmann Acked-by: Arend van Spriel Signed-off-by: Kalle Valo Link: https://msgid.link/20240213100548.457854-1-arnd@kernel.org Signed-off-by: Sasha Levin --- .../net/wireless/broadcom/brcm80211/brcmsmac/phy/phy_cmn.c | 3 ++- drivers/net/wireless/broadcom/brcm80211/brcmsmac/phy_shim.c | 5 ++--- drivers/net/wireless/broadcom/brcm80211/brcmsmac/phy_shim.h | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmsmac/phy/phy_cmn.c= b/drivers/net/wireless/broadcom/brcm80211/brcmsmac/phy/phy_cmn.c index 2441714169de1..849c8109b3982 100644 --- a/drivers/net/wireless/broadcom/brcm80211/brcmsmac/phy/phy_cmn.c +++ b/drivers/net/wireless/broadcom/brcm80211/brcmsmac/phy/phy_cmn.c @@ -383,8 +383,9 @@ struct shared_phy *wlc_phy_shared_attach(struct shared_= phy_params *shp) return sh; } =20 -static void wlc_phy_timercb_phycal(struct brcms_phy *pi) +static void wlc_phy_timercb_phycal(void *ptr) { + struct brcms_phy *pi =3D ptr; uint delay =3D 5; =20 if (PHY_PERICAL_MPHASE_PENDING(pi)) { diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmsmac/phy_shim.c b/= drivers/net/wireless/broadcom/brcm80211/brcmsmac/phy_shim.c index a0de5db0cd646..b723817915365 100644 --- a/drivers/net/wireless/broadcom/brcm80211/brcmsmac/phy_shim.c +++ b/drivers/net/wireless/broadcom/brcm80211/brcmsmac/phy_shim.c @@ -57,12 +57,11 @@ void wlc_phy_shim_detach(struct phy_shim_info *physhim) } =20 struct wlapi_timer *wlapi_init_timer(struct phy_shim_info *physhim, - void (*fn)(struct brcms_phy *pi), + void (*fn)(void *pi), void *arg, const char *name) { return (struct wlapi_timer *) - brcms_init_timer(physhim->wl, (void (*)(void *))fn, - arg, name); + brcms_init_timer(physhim->wl, fn, arg, name); } =20 void wlapi_free_timer(struct wlapi_timer *t) diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmsmac/phy_shim.h b/= drivers/net/wireless/broadcom/brcm80211/brcmsmac/phy_shim.h index dd8774717adee..27d0934e600ed 100644 --- a/drivers/net/wireless/broadcom/brcm80211/brcmsmac/phy_shim.h +++ b/drivers/net/wireless/broadcom/brcm80211/brcmsmac/phy_shim.h @@ -131,7 +131,7 @@ void wlc_phy_shim_detach(struct phy_shim_info *physhim); =20 /* PHY to WL utility functions */ struct wlapi_timer *wlapi_init_timer(struct phy_shim_info *physhim, - void (*fn)(struct brcms_phy *pi), + void (*fn)(void *pi), void *arg, const char *name); void wlapi_free_timer(struct wlapi_timer *t); void wlapi_add_timer(struct wlapi_timer *t, uint ms, int periodic); --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id DEE01180A9C; Sun, 24 Mar 2024 23:47:36 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324058; cv=none; b=mIZQzsXjW2tWZjXAO1LiZAmf/JBCA3ig5P94qVYkD0UEBARjPqjydejgPIyDFE/3bnyjA4PHjavJ/pTIbVxXvI0Pq210jvTQF9CpjOF1y4eawXZZsihJLGl+BqhNDqEsVs/oWH7j2Iz7oVpv2+Zal6BRzv1mYyW2SdVqha1V8Jo= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324058; c=relaxed/simple; bh=MRDmClh3Cke92m76M4nPCaQOFMb5bQB4ZRJEkFsfWQo=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=KiNtwD9WAAuvN09or6ulBxU2JW8N6A/E7wZfDshJqdEGaQSfdgXBU1sb0L2KU6tiRy/0Nhlp55Ge/ztE1iwSttuJ/Cvkhp7Q5xjBNbQwADiT4Gus5mw3SinCkKz9ecg4MpbUX7vjPgDf+1ed8osgcwmXCSzsw+hekXkTwzIi4CI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=qp+nYn3B; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="qp+nYn3B" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 266D2C433B1; Sun, 24 Mar 2024 23:47:36 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324056; bh=MRDmClh3Cke92m76M4nPCaQOFMb5bQB4ZRJEkFsfWQo=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=qp+nYn3BLwpgPoJCM86Ia1LAcHUb1RamApX/L4miQvwuxYw0iBDj3H5SG3OXqR6dI Q7ctFiAA1HHGw9PjKnWBR+cvHj37l1zVpxT664Km43rOhwPmP+AxQQ9WBD3S3KOfIu MzbY9QZWs2X5p+qU0RaJ7ug48sNI/+24KarsDVL61Ids46+ZOEnBbUpucbknkIznF6 1H4JbjzEK6k0Hi04aXTYxBGpgHMToETjQVVmnlDWCI7fkx7U58+Z2tCwY7BnOez/Yz mRyyI/SJzGnJm/QEY49M78KW07GyjSvR++FH0vkpgH3V20MRXn1hvxxj9B+fwQE1/p 1W9aJOFENpQ1Q== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Arthur Kiyanovski , "David S . Miller" , Sasha Levin Subject: [PATCH 5.4 057/183] net: ena: cosmetic: fix line break issues Date: Sun, 24 Mar 2024 19:44:30 -0400 Message-ID: <20240324234638.1355609-58-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Arthur Kiyanovski [ Upstream commit 46143e58884025292bd977ca8bc0fdd9dac47c4c ] 1. Join unnecessarily broken short lines in ena_com.c ena_netdev.c 2. Fix Indentations of broken lines Signed-off-by: Arthur Kiyanovski Signed-off-by: David S. Miller Stable-dep-of: 78e886ba2b54 ("net: ena: Remove ena_select_queue") Signed-off-by: Sasha Levin --- drivers/net/ethernet/amazon/ena/ena_com.c | 8 +++----- drivers/net/ethernet/amazon/ena/ena_netdev.c | 3 +-- 2 files changed, 4 insertions(+), 7 deletions(-) diff --git a/drivers/net/ethernet/amazon/ena/ena_com.c b/drivers/net/ethern= et/amazon/ena/ena_com.c index 9225733f4fece..29700fee42e9d 100644 --- a/drivers/net/ethernet/amazon/ena/ena_com.c +++ b/drivers/net/ethernet/amazon/ena/ena_com.c @@ -375,7 +375,7 @@ static int ena_com_init_io_sq(struct ena_com_dev *ena_d= ev, io_sq->bounce_buf_ctrl.next_to_use =3D 0; =20 size =3D io_sq->bounce_buf_ctrl.buffer_size * - io_sq->bounce_buf_ctrl.buffers_num; + io_sq->bounce_buf_ctrl.buffers_num; =20 dev_node =3D dev_to_node(ena_dev->dmadev); set_dev_node(ena_dev->dmadev, ctx->numa_node); @@ -702,8 +702,7 @@ static int ena_com_config_llq_info(struct ena_com_dev *= ena_dev, /* The desc list entry size should be whole multiply of 8 * This requirement comes from __iowrite64_copy() */ - pr_err("illegal entry size %d\n", - llq_info->desc_list_entry_size); + pr_err("illegal entry size %d\n", llq_info->desc_list_entry_size); return -EINVAL; } =20 @@ -2063,8 +2062,7 @@ void ena_com_aenq_intr_handler(struct ena_com_dev *de= v, void *data) =20 /* write the aenq doorbell after all AENQ descriptors were read */ mb(); - writel_relaxed((u32)aenq->head, - dev->reg_bar + ENA_REGS_AENQ_HEAD_DB_OFF); + writel_relaxed((u32)aenq->head, dev->reg_bar + ENA_REGS_AENQ_HEAD_DB_OFF); } =20 int ena_com_dev_reset(struct ena_com_dev *ena_dev, diff --git a/drivers/net/ethernet/amazon/ena/ena_netdev.c b/drivers/net/eth= ernet/amazon/ena/ena_netdev.c index 2e5348ec2a2e9..734da4e9ead2f 100644 --- a/drivers/net/ethernet/amazon/ena/ena_netdev.c +++ b/drivers/net/ethernet/amazon/ena/ena_netdev.c @@ -2401,8 +2401,7 @@ static u16 ena_select_queue(struct net_device *dev, s= truct sk_buff *skb, return qid; } =20 -static void ena_config_host_info(struct ena_com_dev *ena_dev, - struct pci_dev *pdev) +static void ena_config_host_info(struct ena_com_dev *ena_dev, struct pci_d= ev *pdev) { struct ena_admin_host_info *host_info; int rc; --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id DBE13180A9B; Sun, 24 Mar 2024 23:47:37 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324057; cv=none; b=loy0gdvGH6Nu+4BlcyEqgBvSU4B5PODVqQWf5zDj5CYURDWJe+gdvMVXfMo0KruLz7YLQl29SglhYiIyvsfSnemGmmK9nrmSXEW/Ya6+FuYj+Onn3uJuVewuQJ9TNeOUp7sc70uPYMOpIaJQybWM7OIdP6lsOifYGqx6kYkhQ0o= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324057; c=relaxed/simple; bh=TTPp54xaP7hPOWsq1BkuCXtQRgtzjCMxElupHnk0CuQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=at0hZ1PZybRLCg2RQqlRtp/70eJ9tv2tY3Y8cF7NFpt9giSpkxevGx2ef+GEvgxBQoZ/eohuKE7RK2cXxdWrE3yg8m44+YvvtreEBWZy+krS2Z0cglC0QqCYyLsiaWOzuMpNje4ORL5FpaWnWhPEr57egKC5dNXM9U6tEp9dNW4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=uVQfOj3b; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="uVQfOj3b" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 10F4AC433C7; Sun, 24 Mar 2024 23:47:36 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324057; bh=TTPp54xaP7hPOWsq1BkuCXtQRgtzjCMxElupHnk0CuQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=uVQfOj3bEkzEEHxwDI74mIOlkQTQRWKbkb+xeC3HwRzLodGle/8C/gO3MmgjPkUlN 8hcBKbXlHusUjBjEAe9qs5iBW51ZxpOIhHgBN7WoyimmWK6OhQdKtIWFcV7JH89Fga 7E5pbqmwf8SE6N06rP15IabJGGhAx7HDp6e+SQhridlgUeYemXn/GsUG6ad2m9b+Ud 45Nb8y2BWwBCw0cbz2oVDy/IXEhT+8QyNtcRT9cHjT2+FTOecEhEkd1VPyULxcvO3X 11AR1mkqT6dXwEPI7hyJCZ+I9IqwZnBW6MprYrQCQFg/jo50yjVERc925EeLuEXxYy eX1ahLBgF497w== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Kamal Heib , Jacob Keller , "David S . Miller" , Sasha Levin Subject: [PATCH 5.4 058/183] net: ena: Remove ena_select_queue Date: Sun, 24 Mar 2024 19:44:31 -0400 Message-ID: <20240324234638.1355609-59-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Kamal Heib [ Upstream commit 78e886ba2b549945ecada055ee0765f0ded5707a ] Avoid the following warnings by removing the ena_select_queue() function and rely on the net core to do the queue selection, The issue happen when an skb received from an interface with more queues than ena is forwarded to the ena interface. [ 1176.159959] eth0 selects TX queue 11, but real number of TX queues is 8 [ 1176.863976] eth0 selects TX queue 14, but real number of TX queues is 8 [ 1180.767877] eth0 selects TX queue 14, but real number of TX queues is 8 [ 1188.703742] eth0 selects TX queue 14, but real number of TX queues is 8 Fixes: 1738cd3ed342 ("net: ena: Add a driver for Amazon Elastic Network Ada= pters (ENA)") Signed-off-by: Kamal Heib Reviewed-by: Jacob Keller Signed-off-by: David S. Miller Signed-off-by: Sasha Levin --- drivers/net/ethernet/amazon/ena/ena_netdev.c | 17 ----------------- 1 file changed, 17 deletions(-) diff --git a/drivers/net/ethernet/amazon/ena/ena_netdev.c b/drivers/net/eth= ernet/amazon/ena/ena_netdev.c index 734da4e9ead2f..8e2e0c3bee0b9 100644 --- a/drivers/net/ethernet/amazon/ena/ena_netdev.c +++ b/drivers/net/ethernet/amazon/ena/ena_netdev.c @@ -2385,22 +2385,6 @@ static netdev_tx_t ena_start_xmit(struct sk_buff *sk= b, struct net_device *dev) return NETDEV_TX_OK; } =20 -static u16 ena_select_queue(struct net_device *dev, struct sk_buff *skb, - struct net_device *sb_dev) -{ - u16 qid; - /* we suspect that this is good for in--kernel network services that - * want to loop incoming skb rx to tx in normal user generated traffic, - * most probably we will not get to this - */ - if (skb_rx_queue_recorded(skb)) - qid =3D skb_get_rx_queue(skb); - else - qid =3D netdev_pick_tx(dev, skb, NULL); - - return qid; -} - static void ena_config_host_info(struct ena_com_dev *ena_dev, struct pci_d= ev *pdev) { struct ena_admin_host_info *host_info; @@ -2549,7 +2533,6 @@ static const struct net_device_ops ena_netdev_ops =3D= { .ndo_open =3D ena_open, .ndo_stop =3D ena_close, .ndo_start_xmit =3D ena_start_xmit, - .ndo_select_queue =3D ena_select_queue, .ndo_get_stats64 =3D ena_get_stats64, .ndo_tx_timeout =3D ena_tx_timeout, .ndo_change_mtu =3D ena_change_mtu, --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C4455180B74; Sun, 24 Mar 2024 23:47:38 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324059; cv=none; b=XJnTaQEsEDyK66VOQ87MRbl1qdp1LQFcToNrXfYgviAg1pJeTqm/MWyzhsjC/QobG/MoUIKFLSGgKj44T+qponFRwhspW+DK0xzG61S/qoC2qZyHa8+LIIUTd8Ii4FGdEEtO+5tvgJRIVmMe8FPs9MqPIZXQWN/+72u0c9pwg98= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324059; c=relaxed/simple; bh=acSYC8qx6Eqvje3K7lC9u19vwV0fg/4u9bafU49h0t0=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=ieoCOVq/qi8+3plGbbNCJZO7OIAzW5JasCZCMlEYRkVNse0KZ0RRMuNr/0KcZSwq+l2eE5SBQBPGp8PtbEdkEp3wlGOP/8YNuUBh9qPTjfxdJBh0+FHhkcZapPo2+/aKWzGofpkaAEkx79bfqp4InGzZ0erHl3T8q6g7PAL+lFk= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=raH6Tslo; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="raH6Tslo" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 0D41DC43390; Sun, 24 Mar 2024 23:47:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324058; bh=acSYC8qx6Eqvje3K7lC9u19vwV0fg/4u9bafU49h0t0=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=raH6TslomEhjOWWYXqvt5URMGDvfb/2J/73Uk7dYtkTlSkcJVnmxD0ANDwPO7gI20 aMDNm1vJQfjx12uB8BEDQi86tOukXureO96AVBhjfG5Ve9RB08Th2w3aWQnD8JIJAN 5fmJ5DIM1vkU2nLvbaeXEdav0Ej4F43nJQA+hOyOxc++NE4fgvPJrh3nLJMVivnkOX Dw3kgiIt6JgTIYRzvSWr8OV8DAINLTU8nRKnx/R4zqRIlS6dKkXF3khN7tJUEvO3Up pVutA/CKpZ9NQIuGTEsmTH1ttMkajVE8d858AYp11pMQpy8BkW3VNaCR7USQLYhuY7 aIAuVIwgEc38A== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Geert Uytterhoeven , Linus Walleij , Sasha Levin Subject: [PATCH 5.4 059/183] ARM: dts: arm: realview: Fix development chip ROM compatible value Date: Sun, 24 Mar 2024 19:44:32 -0400 Message-ID: <20240324234638.1355609-60-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Geert Uytterhoeven [ Upstream commit 3baa4c5143d65ebab2de0d99a395e5f4f1f46608 ] When the development chip ROM was added, the "direct-mapped" compatible value was already obsolete. In addition, the device node lacked the accompanying "probe-type" property, causing the old physmap_of_core driver to fall back to trying all available probe types. Unfortunately this fallback was lost when the DT and pdata cases were merged. Fix this by using the modern "mtd-rom" compatible value instead. Fixes: 5c3f5edbe0a1dff3 ("ARM: realview: add flash devices to the PB1176 DT= S") Fixes: 642b1e8dbed7bbbf ("mtd: maps: Merge physmap_of.c into physmap-core.c= ") Signed-off-by: Geert Uytterhoeven Signed-off-by: Linus Walleij Signed-off-by: Sasha Levin --- arch/arm/boot/dts/arm-realview-pb1176.dts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm/boot/dts/arm-realview-pb1176.dts b/arch/arm/boot/dts/= arm-realview-pb1176.dts index 2625ce66f8e7e..673c6e5b2f565 100644 --- a/arch/arm/boot/dts/arm-realview-pb1176.dts +++ b/arch/arm/boot/dts/arm-realview-pb1176.dts @@ -435,7 +435,7 @@ pb1176_serial3: serial@1010f000 { =20 /* Direct-mapped development chip ROM */ pb1176_rom@10200000 { - compatible =3D "direct-mapped"; + compatible =3D "mtd-rom"; reg =3D <0x10200000 0x4000>; bank-width =3D <1>; }; --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id CBD7928A580; Sun, 24 Mar 2024 23:47:39 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324060; cv=none; b=ltYoU4xuXwpZXESOiBuf/l6XVC7LRP+HjzQbuZ+DIwDn46+vxWw4W3ZrZTtkS1k1PG8fu2lRpTdIvUbbbfKWqaZ4sg6heHXr3g+TGOdrJ8/j52MFOuSChubnGgls7FVXHkYlhk67gjK+f9FxEzGoxwuKLSsEXjTl9G8pv8Mc1e8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324060; c=relaxed/simple; bh=bUpUYMke4Y5Mfy8Ay4xsoBeWv65PZHQBx/Oe/vhxX68=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=ESvrnnbXf5ngpThb44LP9Hspwx1cCAoD+BI61SIOPfH23EZNdI5djnlrlMDFnzCMfi7F+pQf4enDo+bgpoqc2VzslQpKubLn0sNdCYyEHpPIWVCtdVOtUil6+fWJFsCx5LV6Irz/SCjCDPA9IlPgcywJDLV2wW1LeV1PCLFlMFQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=leqe7twV; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="leqe7twV" Received: by smtp.kernel.org (Postfix) with ESMTPSA id E8383C433C7; Sun, 24 Mar 2024 23:47:38 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324059; bh=bUpUYMke4Y5Mfy8Ay4xsoBeWv65PZHQBx/Oe/vhxX68=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=leqe7twVGCONIPT7huTNCtdc2EGu59PmSZiJOmtTP4tpSFLzJSxnELja2krUvl5MN Hv31XwX7tnvuBhbbHPzA3N22NBaNufVNmKyTP3fSJGNgvD52JQMgdpXWukiQZN5v6w qSa1Jxf6aFsACC/8LGfhG0M0LvSkdOEce5TD4L9k4i0Qs6Ex3x+AFp6qu5Zs1GNVJZ 9++oJ9UD6QYAPeFYXX8TjB6yM2wrWI4r2OwI/OhuDpdx6yjZYOdmwB4ucZSeQVtm68 yo8eCiWGRmd1UoMHpxMxq3SKRf7jTb3X64ev6JsD8za0PsgI5lK9XKj7j46Lyi7NsX QL3ltJu+0grLA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: =?UTF-8?q?Michal=20Vok=C3=A1=C4=8D?= , Shawn Guo , Sasha Levin Subject: [PATCH 5.4 060/183] ARM: dts: imx6dl-yapp4: Move phy reset into switch node Date: Sun, 24 Mar 2024 19:44:33 -0400 Message-ID: <20240324234638.1355609-61-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable From: Michal Vok=C3=A1=C4=8D [ Upstream commit 7da7b84fee58c85a6075022023d31edea40e81a1 ] Drop the phy-reset-duration and phy-reset-gpios deprecated properties and move reset-gpios under the switch node. Signed-off-by: Michal Vok=C3=A1=C4=8D Signed-off-by: Shawn Guo Stable-dep-of: 023bd910d3ab ("ARM: dts: imx6dl-yapp4: Fix typo in the QCA s= witch register address") Signed-off-by: Sasha Levin --- arch/arm/boot/dts/imx6dl-yapp4-common.dtsi | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/arch/arm/boot/dts/imx6dl-yapp4-common.dtsi b/arch/arm/boot/dts= /imx6dl-yapp4-common.dtsi index ce4a5a8074422..4d1e65c307f86 100644 --- a/arch/arm/boot/dts/imx6dl-yapp4-common.dtsi +++ b/arch/arm/boot/dts/imx6dl-yapp4-common.dtsi @@ -96,8 +96,6 @@ &fec { pinctrl-names =3D "default"; pinctrl-0 =3D <&pinctrl_enet>; phy-mode =3D "rgmii-id"; - phy-reset-gpios =3D <&gpio1 25 GPIO_ACTIVE_LOW>; - phy-reset-duration =3D <20>; phy-supply =3D <&sw2_reg>; status =3D "okay"; =20 @@ -121,6 +119,7 @@ phy_port3: phy@2 { switch@10 { compatible =3D "qca,qca8334"; reg =3D <10>; + reset-gpios =3D <&gpio1 25 GPIO_ACTIVE_LOW>; =20 switch_ports: ports { #address-cells =3D <1>; --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id CD88628A586; Sun, 24 Mar 2024 23:47:40 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324061; cv=none; b=HbnULv2Mb8LndojrZVgASldaG+A4IGNVQBQF3NYY5q7rsxNtIyrjhPGA2mer419oAOveN2LSfqJQlJJ87dxz2MJ5ITuFIZ7PnjhlxEmFxbzbZZhGaCgsOqMNxal8FSKXIQOKkuQBUKoNzm1Ri3+LTBTG20RVxa6N9dytFxOFZM4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324061; c=relaxed/simple; bh=7glZ54lDGMxIj2YZQVQKCzWFHNfN2XPYLHalDBSTC/0=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=Nqebq4BhD+LoG8PaRqWkr0vBl0C6wWAalAYCC44Fp3kdqq3N68dIEUew6sl535bjd29lUzCCzTrS3nvvJJmx4nL/LERWc3WEzvgwNi91FCT5Sp0lCO7KfiqGaK7EzLHwnfXPctlRMjJQWCN8Q+ss2oFbYx7EdcIBsIUgoeQNMH8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=Ow0kswNJ; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="Ow0kswNJ" Received: by smtp.kernel.org (Postfix) with ESMTPSA id F08E8C43390; Sun, 24 Mar 2024 23:47:39 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324060; bh=7glZ54lDGMxIj2YZQVQKCzWFHNfN2XPYLHalDBSTC/0=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Ow0kswNJ0az9svmRra3fDfGf7WgvbVk+7Sx/685KMyO/y9nK3sh8b+mQaxaHvjDIk qM3N38XazWSOBSc9XJrp1/QLV7jy9MiF4gSXGzsoYG96u6uK+NLJnTkdh28u/ew1Ac nperJHjCwUa3eWYliYKHsuCpYuctQH0lhpVjGmIrZV/ycyOVeegd241jVbQPHD3/Ze tfTEpcI2NQtk1bFntHsbzu13aVilRw4wRut8MxNK6fv6BIeTxGTH9cT24/WzFlJnKQ w+Pmz5/cELwCgzJmQQM89KL0E2TRrKFjN8JAYhELC/zhx0wZk7d99LhWiXmi0EzPJo xJ/OQnq0BXAQQ== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: =?UTF-8?q?Michal=20Vok=C3=A1=C4=8D?= , Andrew Lunn , Shawn Guo , Sasha Levin Subject: [PATCH 5.4 061/183] ARM: dts: imx6dl-yapp4: Fix typo in the QCA switch register address Date: Sun, 24 Mar 2024 19:44:34 -0400 Message-ID: <20240324234638.1355609-62-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable From: Michal Vok=C3=A1=C4=8D [ Upstream commit 023bd910d3ab735459f84b22bb99fb9e00bd9d76 ] This change does not have any functional effect. The switch works just fine without this patch as it has full access to all the addresses on the bus. This is simply a clean-up to set the node name address and reg address to the same value. Fixes: 15b43e497ffd ("ARM: dts: imx6dl-yapp4: Use correct pseudo PHY addres= s for the switch") Signed-off-by: Michal Vok=C3=A1=C4=8D Reviewed-by: Andrew Lunn Signed-off-by: Shawn Guo Signed-off-by: Sasha Levin --- arch/arm/boot/dts/imx6dl-yapp4-common.dtsi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm/boot/dts/imx6dl-yapp4-common.dtsi b/arch/arm/boot/dts= /imx6dl-yapp4-common.dtsi index 4d1e65c307f86..e86f409ca8801 100644 --- a/arch/arm/boot/dts/imx6dl-yapp4-common.dtsi +++ b/arch/arm/boot/dts/imx6dl-yapp4-common.dtsi @@ -118,7 +118,7 @@ phy_port3: phy@2 { =20 switch@10 { compatible =3D "qca,qca8334"; - reg =3D <10>; + reg =3D <0x10>; reset-gpios =3D <&gpio1 25 GPIO_ACTIVE_LOW>; =20 switch_ports: ports { --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B177528A58E; Sun, 24 Mar 2024 23:47:41 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324062; cv=none; b=N2fw6f4Wo4sbi2/6v/UHbmQksGl3eoi55h6Q3tYWEhkc0QXw98hQ5GqY4CHmtqyz0avgDXxmSBot+KBdwl3KelGsVR4vJqfKqloaICGDLQjfkl1NLBQz3Gt0E7QWASPRDT9KKpuKgz0IzfalFx5UoDC2pN8SAXCeJ1J2BjUgIsk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324062; c=relaxed/simple; bh=qWzNswTagMzZ48FQkcgy/Cc+8eoWbnQerR1hfc10A88=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=XBEjh4od+0qQSUegvqPM7w7zKDeKdk5MZVz2sdDMNu5FBw52CeKCbMISycWMoPl7FmLwMp7TY3eFzNDo6yzTnFOydSmUkb+b0HCD3Ery9kOCriynk+8cOVKfnMRm6C8uqwzR+a15anJ2MVA8Q1GMqTZLijTc/IHdMUc7Dr/3Mj8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=DZOgX1fJ; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="DZOgX1fJ" Received: by smtp.kernel.org (Postfix) with ESMTPSA id F088EC433F1; Sun, 24 Mar 2024 23:47:40 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324061; bh=qWzNswTagMzZ48FQkcgy/Cc+8eoWbnQerR1hfc10A88=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=DZOgX1fJbnAcIo8vAb7UizVTIOpyO1ffjuJ/TkRv8GEb7GIfyGzVGfJzIUqqY6zrF AsioLqgk2tpaa6fYYD3u8EiJ2w25CYWkyex9UseDROd2KfwtgwOP6pw2hSKTuGbpXb y12DSa9trwG6O/uF/P4vvqgbE+c4hde/ZzcU/IfXtP7RmfEIGl1JgILnOT17zQrnVi d0pi+BLC9fBajZtnGYKQWvFWi6HnFmPuLzfGpwty9cOd9+IK/wn8/rNelTC3V5L2pl JDPjc50Na+nQUEf7YoH4Lf7BhdB3xtpJVCvEqoB3zQ3v56/x18GMqvkvmP6VENjj9d 6/nbhhe8x/BQg== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: =?UTF-8?q?Michal=20Vok=C3=A1=C4=8D?= , Shawn Guo , Sasha Levin Subject: [PATCH 5.4 062/183] ARM: dts: imx6dl-yapp4: Move the internal switch PHYs under the switch node Date: Sun, 24 Mar 2024 19:44:35 -0400 Message-ID: <20240324234638.1355609-63-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable From: Michal Vok=C3=A1=C4=8D [ Upstream commit 79978bff2e4b8e05ebdf5fc3ee6b794002393484 ] We identified that the PHYs actually do not work since commit 7da7b84fee58 ("ARM: dts: imx6dl-yapp4: Move phy reset into switch node") as a coincidence of several circumstances. The reset signal is kept asserted by a pull-down resistor on the board unless it is deasserted by GPIO from the SoC. This is to keep the switch dead until it is configured properly by the kernel and user space. Prior to the referenced commit the switch was reset by the FEC driver and the reset GPIO was actively deasserted. The mdio-bus was scanned and the attached switch and its PHYs were found and configured. With the referenced commit the switch is reset by the qca8k driver. Because of another bug in the qca8k driver, functionality of the reset pin depends on its pre-kernel configuration. See commit c44fc98f0a8f ("net: dsa: qca8k: fix illegal usage of GPIO") The problem did not appear until we removed support for the switch and configuration of its reset pin from the bootloader. To fix that, properly describe the internal mdio-bus configuration of the qca8334 switch. The PHYs are internal to the switch and sit on its internal mdio-bus. Fixes: 7da7b84fee58 ("ARM: dts: imx6dl-yapp4: Move phy reset into switch no= de") Signed-off-by: Michal Vok=C3=A1=C4=8D Signed-off-by: Shawn Guo Signed-off-by: Sasha Levin --- arch/arm/boot/dts/imx6dl-yapp4-common.dtsi | 23 ++++++++++++++-------- 1 file changed, 15 insertions(+), 8 deletions(-) diff --git a/arch/arm/boot/dts/imx6dl-yapp4-common.dtsi b/arch/arm/boot/dts= /imx6dl-yapp4-common.dtsi index e86f409ca8801..68af441e78948 100644 --- a/arch/arm/boot/dts/imx6dl-yapp4-common.dtsi +++ b/arch/arm/boot/dts/imx6dl-yapp4-common.dtsi @@ -108,14 +108,6 @@ mdio { #address-cells =3D <1>; #size-cells =3D <0>; =20 - phy_port2: phy@1 { - reg =3D <1>; - }; - - phy_port3: phy@2 { - reg =3D <2>; - }; - switch@10 { compatible =3D "qca,qca8334"; reg =3D <0x10>; @@ -140,15 +132,30 @@ fixed-link { port@2 { reg =3D <2>; label =3D "eth2"; + phy-mode =3D "internal"; phy-handle =3D <&phy_port2>; }; =20 port@3 { reg =3D <3>; label =3D "eth1"; + phy-mode =3D "internal"; phy-handle =3D <&phy_port3>; }; }; + + mdio { + #address-cells =3D <1>; + #size-cells =3D <0>; + + phy_port2: ethernet-phy@1 { + reg =3D <1>; + }; + + phy_port3: ethernet-phy@2 { + reg =3D <2>; + }; + }; }; }; }; --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9344628A58D; Sun, 24 Mar 2024 23:47:42 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324062; cv=none; b=JAloTGRstU6mqk2nDmTicp3w5Yq+MfIHnw/pfJ/w/IfLP6Ws47NA4Ekwr0hQt8aSt/CDnyGZdnX9uhSQTC27qI5vSF7xqAITi1Cul3/QUtUsPHaL8ts4DR4XcT8pV5luoQB0etGBvB4WBltZ+KmLv4TGRHay1pM7Rri3G+gkpks= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324062; c=relaxed/simple; bh=KxoXkw8EMJ4UyTeRijlN1ijgtLEipvile9D9fHXzNVc=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=ngwvGceeFl+skgvfMR5c05UytsVWPqQDZJAlQIetS0CF5z53Gq5G+EFT8jrmBojbVmO0xvARGZz+LVxzJhR+uWC37AtDUitSqM1V3Qt6YL5YU6YkfBu7vpcIkRyrePksee0Q739HGvTKFD7ZMEwbKQm2vuiGuHSGdY2RjKfTep8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=iiVZ22hb; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="iiVZ22hb" Received: by smtp.kernel.org (Postfix) with ESMTPSA id D460FC43394; Sun, 24 Mar 2024 23:47:41 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324062; bh=KxoXkw8EMJ4UyTeRijlN1ijgtLEipvile9D9fHXzNVc=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=iiVZ22hbrQQUcNaZFxgm/DYYjSILjZadb1lP+Jwwub2cVtGrtdC21DYHnYrWcOGO1 MLqrJVjScgkdHWX1RrgGnuvat4nqe1GDZdRk9gQi4Kqte1uyrrYgeUzcZ/eCEkxIyO jFLl9J8SYXjq30b4V7uN/DLweWrmUJw/XlgF3/6L92mRAn8tEed4RyqUJraQxeIqZP L+FpRane5AKWj4DXprdRNDrLQJCl3MXPuPJbKtqnfMoVBd7mNhMT6ye1fYLA48L8AA XfNU8oxW8cILYDLMpf/POaSSaKogZndI5WN0XXrYHpS36/rtfg/gCF+rZUJ7PR1SrH IrrBJhD6jhSuA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: "Rafael J. Wysocki" , Jonathan Cameron , Sasha Levin Subject: [PATCH 5.4 063/183] ACPI: scan: Fix device check notification handling Date: Sun, 24 Mar 2024 19:44:36 -0400 Message-ID: <20240324234638.1355609-64-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: "Rafael J. Wysocki" [ Upstream commit 793551c965116d9dfaf0550dacae1396a20efa69 ] It is generally invalid to fail a Device Check notification if the scan handler has not been attached to the given device after a bus rescan, because there may be valid reasons for the scan handler to refuse attaching to the device (for example, the device is not ready). For this reason, modify acpi_scan_device_check() to return 0 in that case without printing a warning. While at it, reduce the log level of the "already enumerated" message in the same function, because it is only interesting when debugging notification handling Fixes: 443fc8202272 ("ACPI / hotplug: Rework generic code to handle suprise= removals") Signed-off-by: Rafael J. Wysocki Reviewed-by: Jonathan Cameron Signed-off-by: Sasha Levin --- drivers/acpi/scan.c | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/drivers/acpi/scan.c b/drivers/acpi/scan.c index 5d4be80ee6cb4..629e6044f6233 100644 --- a/drivers/acpi/scan.c +++ b/drivers/acpi/scan.c @@ -322,18 +322,14 @@ static int acpi_scan_device_check(struct acpi_device = *adev) * again). */ if (adev->handler) { - dev_warn(&adev->dev, "Already enumerated\n"); - return -EALREADY; + dev_dbg(&adev->dev, "Already enumerated\n"); + return 0; } error =3D acpi_bus_scan(adev->handle); if (error) { dev_warn(&adev->dev, "Namespace scan failure\n"); return error; } - if (!adev->handler) { - dev_warn(&adev->dev, "Enumeration failure\n"); - error =3D -ENODEV; - } } else { error =3D acpi_scan_device_not_present(adev); } --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9A05B28A5A5; Sun, 24 Mar 2024 23:47:43 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324064; cv=none; b=XXqmtQ9d5eUMRZVhg62RtEy5Ie4Jq2XtBOu+cQ4Yik2ztZ2vMRf1w0/1TRQq4q3XbHGlvkNYYKRn3cbYTf8ipPNAXUciN3ZlKt372c4riAqe0e+JqRA2268OfxESmnRsYrfF1Qu3oPJ7jk6+DPYdwow9XZf0S+DQ694egxQENSg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324064; c=relaxed/simple; bh=8lg0zeAncBldALqSh3pqQu0z65I0wQjs983ZY90vK1Q=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=fNOqL8tr56S+qFiEnD++ujw6o3mX3huS546iCi9Y6foOw14ZZdtFA0w6/eFf6H+nq1BmUowBN9gYgBYUMEnUdju9Hl4t/qynL7LOw7TTjrb2wW45WKsbh8rDk27pP45HSWt2Hy97PfgR8roU+ZP9JtwdEWH9+P585DOlmQygPoM= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=FuVqnA4t; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="FuVqnA4t" Received: by smtp.kernel.org (Postfix) with ESMTPSA id B7BAFC43390; Sun, 24 Mar 2024 23:47:42 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324063; bh=8lg0zeAncBldALqSh3pqQu0z65I0wQjs983ZY90vK1Q=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=FuVqnA4t8P6E8I6n/DrfssqCshhQ13jqEMkChgfExkowd0kJ4hAZre2nYjS4GhCZk 8/IsTGljdFCwnoV8rJeW6wfbXD2QQXbutOZKJlow5gV4Fz8YePkMYCoZ+QqXzelPeI WoyHDNbYo9rxHGKNayL2Akx9UtmgQU/7Xhk/g5ciFap8Z7nIJovqsIr+SYPCY3+M5u b3thnbbAEOBwS/6q2T4v8T6d9GpnXz5d9q1xokdzFv25bKWQPyT5j67tt1JF7R1tfW xWzwoOUThzp93Ij7LINGWZRDldnsVb4yH5kt1t6Y6EZg0cFX8ey1cnESqTq3CKja6j eIwoF8RoLu9hQ== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Kees Cook , Guixiong Wei , Juergen Gross , Sasha Levin Subject: [PATCH 5.4 064/183] x86, relocs: Ignore relocations in .notes section Date: Sun, 24 Mar 2024 19:44:37 -0400 Message-ID: <20240324234638.1355609-65-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Kees Cook [ Upstream commit aaa8736370db1a78f0e8434344a484f9fd20be3b ] When building with CONFIG_XEN_PV=3Dy, .text symbols are emitted into the .notes section so that Xen can find the "startup_xen" entry point. This information is used prior to booting the kernel, so relocations are not useful. In fact, performing relocations against the .notes section means that the KASLR base is exposed since /sys/kernel/notes is world-readable. To avoid leaking the KASLR base without breaking unprivileged tools that are expecting to read /sys/kernel/notes, skip performing relocations in the .notes section. The values readable in .notes are then identical to those found in System.map. Reported-by: Guixiong Wei Closes: https://lore.kernel.org/all/20240218073501.54555-1-guixiongwei@gmai= l.com/ Fixes: 5ead97c84fa7 ("xen: Core Xen implementation") Fixes: da1a679cde9b ("Add /sys/kernel/notes") Reviewed-by: Juergen Gross Signed-off-by: Kees Cook Signed-off-by: Sasha Levin --- arch/x86/tools/relocs.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/arch/x86/tools/relocs.c b/arch/x86/tools/relocs.c index 1c3a1962cade6..0043fd374a62f 100644 --- a/arch/x86/tools/relocs.c +++ b/arch/x86/tools/relocs.c @@ -596,6 +596,14 @@ static void print_absolute_relocs(void) if (!(sec_applies->shdr.sh_flags & SHF_ALLOC)) { continue; } + /* + * Do not perform relocations in .notes section; any + * values there are meant for pre-boot consumption (e.g. + * startup_xen). + */ + if (sec_applies->shdr.sh_type =3D=3D SHT_NOTE) { + continue; + } sh_symtab =3D sec_symtab->symtab; sym_strtab =3D sec_symtab->link->strtab; for (j =3D 0; j < sec->shdr.sh_size/sizeof(Elf_Rel); j++) { --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 7046E28A5AA; Sun, 24 Mar 2024 23:47:44 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324065; cv=none; b=KiR7dsCyU5+cPYeo0wIEo6eE8omtrw+1ka7keyad64ZiGYfM+zyookSCc+QWa1Lvr2v0e8jKoRdN4AqES3cVUaXKIvvNSoikmP83bsOXPlixfUWcXsCKnFo7/UyJyIpiDoz5/iQiNRrhDtna8FbaHSf8zdFiOfBGDVLRPc/J41U= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324065; c=relaxed/simple; bh=+bjCDMRwadsGgRz/Ka4YYjHtGlwmEY4ooDUpXQ3MzME=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=dGrivOLz4zzUf4rbMO2RY4wmvk6mPWBDrz9qA2vpqOIjn1yl65priydHrtJxBTzK0tVaXhMRYCprSXTYwQVW354/gAIfE7Xk7qt4d8sprL630tUfaP+ydbht7E1j9bUToIKouuoyCjqwlFsPp6m+1hwqJ8l2ZK/Kq+QIPKxilhw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=tDj2Hxi2; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="tDj2Hxi2" Received: by smtp.kernel.org (Postfix) with ESMTPSA id B43C3C433F1; Sun, 24 Mar 2024 23:47:43 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324064; bh=+bjCDMRwadsGgRz/Ka4YYjHtGlwmEY4ooDUpXQ3MzME=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=tDj2Hxi24xQ0G6WEuTaLDaS1Fac/MXoj8y1H6dzaC+alI56H5BtZmofMKb32Yo4Ah AgwVhFupnodrh3wvbIqgqBaoKQlda2MqZTkbLfLG23CtSKUhE+w4W6AopbTeNin6sO Uk9GscYdRbiQHAkHnoAv+f2MgcQLvRwYQfsnUlAtZhjul2FDssXI8zV7veMHXsxXiL MQpm3t+FbNyGMfbMOg2KA/gNHB9H9ZFy8Mnaq41HmZTBKM/S0OhGlSsBaWdVpjoVd5 /kurKuy5jX+Uv8fT7XibWAj2n9eEHKPoDvhUsIdVALIK33oOX0xuAB84QmVTvMRnbX VEZWVEOOPD3tg== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Zhipeng Lu , Chuck Lever , Sasha Levin Subject: [PATCH 5.4 065/183] SUNRPC: fix some memleaks in gssx_dec_option_array Date: Sun, 24 Mar 2024 19:44:38 -0400 Message-ID: <20240324234638.1355609-66-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Zhipeng Lu [ Upstream commit 3cfcfc102a5e57b021b786a755a38935e357797d ] The creds and oa->data need to be freed in the error-handling paths after their allocation. So this patch add these deallocations in the corresponding paths. Fixes: 1d658336b05f ("SUNRPC: Add RPC based upcall mechanism for RPCGSS aut= h") Signed-off-by: Zhipeng Lu Signed-off-by: Chuck Lever Signed-off-by: Sasha Levin --- net/sunrpc/auth_gss/gss_rpc_xdr.c | 27 +++++++++++++++++++-------- 1 file changed, 19 insertions(+), 8 deletions(-) diff --git a/net/sunrpc/auth_gss/gss_rpc_xdr.c b/net/sunrpc/auth_gss/gss_rp= c_xdr.c index 2ff7b7083ebab..e265b8d38aa14 100644 --- a/net/sunrpc/auth_gss/gss_rpc_xdr.c +++ b/net/sunrpc/auth_gss/gss_rpc_xdr.c @@ -250,8 +250,8 @@ static int gssx_dec_option_array(struct xdr_stream *xdr, =20 creds =3D kzalloc(sizeof(struct svc_cred), GFP_KERNEL); if (!creds) { - kfree(oa->data); - return -ENOMEM; + err =3D -ENOMEM; + goto free_oa; } =20 oa->data[0].option.data =3D CREDS_VALUE; @@ -265,29 +265,40 @@ static int gssx_dec_option_array(struct xdr_stream *x= dr, =20 /* option buffer */ p =3D xdr_inline_decode(xdr, 4); - if (unlikely(p =3D=3D NULL)) - return -ENOSPC; + if (unlikely(p =3D=3D NULL)) { + err =3D -ENOSPC; + goto free_creds; + } =20 length =3D be32_to_cpup(p); p =3D xdr_inline_decode(xdr, length); - if (unlikely(p =3D=3D NULL)) - return -ENOSPC; + if (unlikely(p =3D=3D NULL)) { + err =3D -ENOSPC; + goto free_creds; + } =20 if (length =3D=3D sizeof(CREDS_VALUE) && memcmp(p, CREDS_VALUE, sizeof(CREDS_VALUE)) =3D=3D 0) { /* We have creds here. parse them */ err =3D gssx_dec_linux_creds(xdr, creds); if (err) - return err; + goto free_creds; oa->data[0].value.len =3D 1; /* presence */ } else { /* consume uninteresting buffer */ err =3D gssx_dec_buffer(xdr, &dummy); if (err) - return err; + goto free_creds; } } return 0; + +free_creds: + kfree(creds); +free_oa: + kfree(oa->data); + oa->data =3D NULL; + return err; } =20 static int gssx_dec_status(struct xdr_stream *xdr, --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 5BAF928A5B1; Sun, 24 Mar 2024 23:47:45 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324066; cv=none; b=E9UARtYUfrQAwx5cCXA2l6kOIPwltMzebOQxpkuxWKLEWWV4OMueY8WSOwFNq3Z/6CxIV6vEvRSYkK2hYoUY5QHOxUjZrxFMkXIsmcDr/SPA1bjAlA0Ou4htepB6ySmW5B2bIETuaPwH6k4+zNd5XKF2eaDeonabaBAmJ8gsIqo= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324066; c=relaxed/simple; bh=q4FQbdmsrgd2cVAnEuk372EhOMMJ2c0RE9ooJVL7GqQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=X4dcEmfipiAubc5Cu6UmGzH2yhvyg7L5P0q68vBlCqtBOwTcM3rGDJrBvf9+hn3kAIhzGAno+GcSU/jQ6gNMQbrX8ymq6FumI/y4Y1x1tE6q9wWcScPjEdc8X3A05cN9VbBhG5RzUyr1d4k5SZjJEQmKAymY9hMw7hCYb7xq0Hg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=iRe29KFx; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="iRe29KFx" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 9887EC433C7; Sun, 24 Mar 2024 23:47:44 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324065; bh=q4FQbdmsrgd2cVAnEuk372EhOMMJ2c0RE9ooJVL7GqQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=iRe29KFxOM8jxyK9DjB6QFl49+369nkQy68+Wq03TPtSQ0AfkAeVi6AesZLA97sGo 1kK+dFLnkFIb9IlSPH0CgqxbAxgYtK5kQn9VjM8tjBeVFJUc9qKg2o5G6dva5kyZm5 SqZ40FyvoHnuXzFpRh1W03cqGOFWmeokCOz49eyitqIYNRzKz0fZlDfZENDr/rMGR/ uDMh5GnabwBMrgr6a0IO2S4Z7korwQIzaLBQJNO4EbnJrexroZivwP9eOkHij0XgKs +Sdzg9HiBnb7DFY34fbZEG2r19C8tLeto2TQIzn/Qogm8N9iU6cQKq+7nlQIA4yeDZ aGGVAjZ027mIA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Christophe JAILLET , Ulf Hansson , Sasha Levin Subject: [PATCH 5.4 066/183] mmc: wmt-sdmmc: remove an incorrect release_mem_region() call in the .remove function Date: Sun, 24 Mar 2024 19:44:39 -0400 Message-ID: <20240324234638.1355609-67-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Christophe JAILLET [ Upstream commit ae5004a40a262d329039b99b62bd3fe7645b66ad ] This looks strange to call release_mem_region() in a remove function without any request_mem_region() in the probe or "struct resource" somewhere. So remove the corresponding code. Fixes: 3a96dff0f828 ("mmc: SD/MMC Host Controller for Wondermedia WM8505/WM= 8650") Signed-off-by: Christophe JAILLET Link: https://lore.kernel.org/r/bb0bb1ed1e18de55e8c0547625bde271e64b8c31.17= 08983064.git.christophe.jaillet@wanadoo.fr Signed-off-by: Ulf Hansson Signed-off-by: Sasha Levin --- drivers/mmc/host/wmt-sdmmc.c | 4 ---- 1 file changed, 4 deletions(-) diff --git a/drivers/mmc/host/wmt-sdmmc.c b/drivers/mmc/host/wmt-sdmmc.c index b1e4199f82920..345b3c50f27dd 100644 --- a/drivers/mmc/host/wmt-sdmmc.c +++ b/drivers/mmc/host/wmt-sdmmc.c @@ -889,7 +889,6 @@ static int wmt_mci_remove(struct platform_device *pdev) { struct mmc_host *mmc; struct wmt_mci_priv *priv; - struct resource *res; u32 reg_tmp; =20 mmc =3D platform_get_drvdata(pdev); @@ -917,9 +916,6 @@ static int wmt_mci_remove(struct platform_device *pdev) clk_disable_unprepare(priv->clk_sdmmc); clk_put(priv->clk_sdmmc); =20 - res =3D platform_get_resource(pdev, IORESOURCE_MEM, 0); - release_mem_region(res->start, resource_size(res)); - mmc_free_host(mmc); =20 dev_info(&pdev->dev, "WMT MCI device removed\n"); --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B03F3180B83; Sun, 24 Mar 2024 23:47:46 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324067; cv=none; b=LMIrxinWH55NUcxcGzcSqKZdLGFr/ptQdNXGURtDJ3DuZtdWUg2mYgCSAy0vgVXl3ca3lBPWad8ZvX6An9h1JjYIK3akYe3FZUz2tiu5jZbL//97y8MZkgRzC8l+7VUOsQIfDdGutr6z7J9Xp2QePaPiSAaFRJUlOPl2z2vqC6M= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324067; c=relaxed/simple; bh=gLV7BXMgy4BHjaqXwUFmVmV1A/4dI7lvd8u+X/1gMmA=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=kRhB4MdfG+jtbdbWBCVK8+NxrKa8Q/0dOw3sWEQIq6Icqvxr9ncZDXPgvmWfzUPT/rsHQwgiJlHF4JZwVL9iP68NDYA5h0Lb8oZFgNSNfElaA8VgCuU+NsDFmOAV3ZjDgDm5CGBQlJhUQ9LuyGfXuN8WzFesdc+j30Kit33rYj0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=MJyHUPlH; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="MJyHUPlH" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 7F250C43390; Sun, 24 Mar 2024 23:47:45 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324066; bh=gLV7BXMgy4BHjaqXwUFmVmV1A/4dI7lvd8u+X/1gMmA=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=MJyHUPlHIo+KkksDYilhwXyeB5dYPhsoPLk1cGIakMc+iQdAF9clrw21LxSyugj3t uIrRp7kQQzLefu/Za/9fQmK9HeuwKitWDxkslIyp/tYUz2RmQkNSZ2fsWIEa9DWDBw hI8awsouEXElOKu64gGoJ/wRX3JspZ8Pk15lznxo3uyBs5S7N1PNXT2ymbIhoi9Jo8 k67d98W7MC2SUISeqcpPe9nU03+TbNlaAPrhCPS+SVI8ilUdEKM+rWT7lRg58HszcT XxTMzJCNcm7vdRNOrzvK8+Y5CbXHZcC3/dx8mo1FhyOv0Zzk1YjY+lazjxq4zgdZ6S I72U9N8Co3FGg== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Ruud Bos , Gurucharan G , Tony Nguyen , Sasha Levin Subject: [PATCH 5.4 067/183] igb: move PEROUT and EXTTS isr logic to separate functions Date: Sun, 24 Mar 2024 19:44:40 -0400 Message-ID: <20240324234638.1355609-68-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Ruud Bos [ Upstream commit cf99c1dd7b7729091043374b90807c7a5f9fd9b1 ] Remove code duplication in the tsync interrupt handler function by moving this logic to separate functions. This keeps the interrupt handler readable and allows the new functions to be extended for adapter types other than i210. Signed-off-by: Ruud Bos Tested-by: Gurucharan G Signed-off-by: Tony Nguyen Stable-dep-of: ee14cc9ea19b ("igb: Fix missing time sync events") Signed-off-by: Sasha Levin --- drivers/net/ethernet/intel/igb/igb_main.c | 81 +++++++++++++---------- 1 file changed, 46 insertions(+), 35 deletions(-) diff --git a/drivers/net/ethernet/intel/igb/igb_main.c b/drivers/net/ethern= et/intel/igb/igb_main.c index 6638d314c811c..fd1efac092472 100644 --- a/drivers/net/ethernet/intel/igb/igb_main.c +++ b/drivers/net/ethernet/intel/igb/igb_main.c @@ -6479,12 +6479,52 @@ void igb_update_stats(struct igb_adapter *adapter) } } =20 +static void igb_perout(struct igb_adapter *adapter, int tsintr_tt) +{ + int pin =3D ptp_find_pin(adapter->ptp_clock, PTP_PF_PEROUT, tsintr_tt); + struct e1000_hw *hw =3D &adapter->hw; + struct timespec64 ts; + u32 tsauxc; + + if (pin < 0 || pin >=3D IGB_N_PEROUT) + return; + + spin_lock(&adapter->tmreg_lock); + ts =3D timespec64_add(adapter->perout[pin].start, + adapter->perout[pin].period); + /* u32 conversion of tv_sec is safe until y2106 */ + wr32((tsintr_tt =3D=3D 1) ? E1000_TRGTTIML1 : E1000_TRGTTIML0, ts.tv_nsec= ); + wr32((tsintr_tt =3D=3D 1) ? E1000_TRGTTIMH1 : E1000_TRGTTIMH0, (u32)ts.tv= _sec); + tsauxc =3D rd32(E1000_TSAUXC); + tsauxc |=3D TSAUXC_EN_TT0; + wr32(E1000_TSAUXC, tsauxc); + adapter->perout[pin].start =3D ts; + spin_unlock(&adapter->tmreg_lock); +} + +static void igb_extts(struct igb_adapter *adapter, int tsintr_tt) +{ + int pin =3D ptp_find_pin(adapter->ptp_clock, PTP_PF_EXTTS, tsintr_tt); + struct e1000_hw *hw =3D &adapter->hw; + struct ptp_clock_event event; + u32 sec, nsec; + + if (pin < 0 || pin >=3D IGB_N_EXTTS) + return; + + nsec =3D rd32((tsintr_tt =3D=3D 1) ? E1000_AUXSTMPL1 : E1000_AUXSTMPL0); + sec =3D rd32((tsintr_tt =3D=3D 1) ? E1000_AUXSTMPH1 : E1000_AUXSTMPH0); + event.type =3D PTP_CLOCK_EXTTS; + event.index =3D tsintr_tt; + event.timestamp =3D sec * 1000000000ULL + nsec; + ptp_clock_event(adapter->ptp_clock, &event); +} + static void igb_tsync_interrupt(struct igb_adapter *adapter) { struct e1000_hw *hw =3D &adapter->hw; + u32 ack =3D 0, tsicr =3D rd32(E1000_TSICR); struct ptp_clock_event event; - struct timespec64 ts; - u32 ack =3D 0, tsauxc, sec, nsec, tsicr =3D rd32(E1000_TSICR); =20 if (tsicr & TSINTR_SYS_WRAP) { event.type =3D PTP_CLOCK_PPS; @@ -6500,51 +6540,22 @@ static void igb_tsync_interrupt(struct igb_adapter = *adapter) } =20 if (tsicr & TSINTR_TT0) { - spin_lock(&adapter->tmreg_lock); - ts =3D timespec64_add(adapter->perout[0].start, - adapter->perout[0].period); - /* u32 conversion of tv_sec is safe until y2106 */ - wr32(E1000_TRGTTIML0, ts.tv_nsec); - wr32(E1000_TRGTTIMH0, (u32)ts.tv_sec); - tsauxc =3D rd32(E1000_TSAUXC); - tsauxc |=3D TSAUXC_EN_TT0; - wr32(E1000_TSAUXC, tsauxc); - adapter->perout[0].start =3D ts; - spin_unlock(&adapter->tmreg_lock); + igb_perout(adapter, 0); ack |=3D TSINTR_TT0; } =20 if (tsicr & TSINTR_TT1) { - spin_lock(&adapter->tmreg_lock); - ts =3D timespec64_add(adapter->perout[1].start, - adapter->perout[1].period); - wr32(E1000_TRGTTIML1, ts.tv_nsec); - wr32(E1000_TRGTTIMH1, (u32)ts.tv_sec); - tsauxc =3D rd32(E1000_TSAUXC); - tsauxc |=3D TSAUXC_EN_TT1; - wr32(E1000_TSAUXC, tsauxc); - adapter->perout[1].start =3D ts; - spin_unlock(&adapter->tmreg_lock); + igb_perout(adapter, 1); ack |=3D TSINTR_TT1; } =20 if (tsicr & TSINTR_AUTT0) { - nsec =3D rd32(E1000_AUXSTMPL0); - sec =3D rd32(E1000_AUXSTMPH0); - event.type =3D PTP_CLOCK_EXTTS; - event.index =3D 0; - event.timestamp =3D sec * 1000000000ULL + nsec; - ptp_clock_event(adapter->ptp_clock, &event); + igb_extts(adapter, 0); ack |=3D TSINTR_AUTT0; } =20 if (tsicr & TSINTR_AUTT1) { - nsec =3D rd32(E1000_AUXSTMPL1); - sec =3D rd32(E1000_AUXSTMPH1); - event.type =3D PTP_CLOCK_EXTTS; - event.index =3D 1; - event.timestamp =3D sec * 1000000000ULL + nsec; - ptp_clock_event(adapter->ptp_clock, &event); + igb_extts(adapter, 1); ack |=3D TSINTR_AUTT1; } =20 --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 2D27922618A; Sun, 24 Mar 2024 23:47:48 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324069; cv=none; b=G76OGn70U7pe3OP0o3ivIABRSMhAaR4PizLwhjq/eYNIs5Df3bB2f/Skq2gbrCv1rZdDE3eg+sJKAIFZZxmNQAStbSontjxADAVRrWYasNLRDhjsd/LlIRojtOUUxMQUn4rMRgyiTqcEE+1FQU+/rf799dTbByckmsAPPvmgHNM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324069; c=relaxed/simple; bh=ElKDkwDYg47JKtLOChSCayoYwR9iCxFNMstaOwdD5zo=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=s8Ah3aptBwYOELNIUA29VZCIUjVl5vNpWHVLIegw5YDxRlS+aatFzF20uU6BtpuPjMhDOlN3WC7MhvBVJ/a6DZVwc2Hu1NFVtngYjFDELhcFrqRjCnDgmV6HHCPG1GSITtS+/4GOqGkON03jAGn+Wsp9Br+NGlzD+bffSJtT6J0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=LiZqRZva; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="LiZqRZva" Received: by smtp.kernel.org (Postfix) with ESMTPSA id D468BC433C7; Sun, 24 Mar 2024 23:47:46 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324068; bh=ElKDkwDYg47JKtLOChSCayoYwR9iCxFNMstaOwdD5zo=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=LiZqRZvaSEVgyGMRJO1UaYCcI4AqJIoOmqJWxJZeoo3WrC4x7i4NmrrH4uy35NGrG C9pkfxUU+U93iR7lNxMFWYEtMpg0mt9bBoCec+RIMx/xqMyVd3gkDelmttLTU6IgiR S4Hquw3iRt5oJxtvCst9qKcgceS/jC1nr+xqiduk1iQmzF9eaQCQr9P+qT3uHIshaL EYEDIG2sJqxnk08Fvggc4DT/+5H+8/tDyfLU7h7G8hCTW7UpYOvCLCF5J1Uv8LiJon BOPJpUigSZ2WFl/tshtIUHhTa4WQkK4JjnirLzc2DgF7aQUuvHSzYYXA7E/06+5Vtu U+gag56ljDMzw== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Vinicius Costa Gomes , Richard Cochran , Pucha Himasekhar Reddy , Tony Nguyen , Sasha Levin Subject: [PATCH 5.4 068/183] igb: Fix missing time sync events Date: Sun, 24 Mar 2024 19:44:41 -0400 Message-ID: <20240324234638.1355609-69-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Vinicius Costa Gomes [ Upstream commit ee14cc9ea19ba9678177e2224a9c58cce5937c73 ] Fix "double" clearing of interrupts, which can cause external events or timestamps to be missed. The E1000_TSIRC Time Sync Interrupt Cause register can be cleared in two ways, by either reading it or by writing '1' into the specific cause bit. This is documented in section 8.16.1. The following flow was used: 1. read E1000_TSIRC into 'tsicr'; 2. handle the interrupts present into 'tsirc' and mark them in 'ack'; 3. write 'ack' into E1000_TSICR; As both (1) and (3) will clear the interrupt cause, if the same interrupt happens again between (1) and (3) it will be ignored, causing events to be missed. Remove the extra clear in (3). Fixes: 00c65578b47b ("igb: enable internal PPS for the i210") Acked-by: Richard Cochran Signed-off-by: Vinicius Costa Gomes Tested-by: Pucha Himasekhar Reddy (A Co= ntingent worker at Intel) Signed-off-by: Tony Nguyen Signed-off-by: Sasha Levin --- drivers/net/ethernet/intel/igb/igb_main.c | 23 +++++------------------ 1 file changed, 5 insertions(+), 18 deletions(-) diff --git a/drivers/net/ethernet/intel/igb/igb_main.c b/drivers/net/ethern= et/intel/igb/igb_main.c index fd1efac092472..cceff1515ea1d 100644 --- a/drivers/net/ethernet/intel/igb/igb_main.c +++ b/drivers/net/ethernet/intel/igb/igb_main.c @@ -6523,44 +6523,31 @@ static void igb_extts(struct igb_adapter *adapter, = int tsintr_tt) static void igb_tsync_interrupt(struct igb_adapter *adapter) { struct e1000_hw *hw =3D &adapter->hw; - u32 ack =3D 0, tsicr =3D rd32(E1000_TSICR); + u32 tsicr =3D rd32(E1000_TSICR); struct ptp_clock_event event; =20 if (tsicr & TSINTR_SYS_WRAP) { event.type =3D PTP_CLOCK_PPS; if (adapter->ptp_caps.pps) ptp_clock_event(adapter->ptp_clock, &event); - ack |=3D TSINTR_SYS_WRAP; } =20 if (tsicr & E1000_TSICR_TXTS) { /* retrieve hardware timestamp */ schedule_work(&adapter->ptp_tx_work); - ack |=3D E1000_TSICR_TXTS; } =20 - if (tsicr & TSINTR_TT0) { + if (tsicr & TSINTR_TT0) igb_perout(adapter, 0); - ack |=3D TSINTR_TT0; - } =20 - if (tsicr & TSINTR_TT1) { + if (tsicr & TSINTR_TT1) igb_perout(adapter, 1); - ack |=3D TSINTR_TT1; - } =20 - if (tsicr & TSINTR_AUTT0) { + if (tsicr & TSINTR_AUTT0) igb_extts(adapter, 0); - ack |=3D TSINTR_AUTT0; - } =20 - if (tsicr & TSINTR_AUTT1) { + if (tsicr & TSINTR_AUTT1) igb_extts(adapter, 1); - ack |=3D TSINTR_AUTT1; - } - - /* acknowledge the interrupts */ - wr32(E1000_TSICR, ack); } =20 static irqreturn_t igb_msix_other(int irq, void *data) --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 602A1226197; Sun, 24 Mar 2024 23:47:49 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324070; cv=none; b=C9mZ0QNzj/uFLwpMImpDMZzUMSd2P8kng6j3WIQ+FThsLnzrqIrBz6KOzHe285Ew82P0dBAAI1vKmLdJS83JSPw4+PC3uqra2WiJ3I1za3H/9kWNwh0oCLGfn8fOgCaKp4XZDh9kZD4IKX5B2paMQjB325MGhl/8G+cvkU/pgM0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324070; c=relaxed/simple; bh=t0VzECWIqPRM1v7GnYR0cuG7jLghPB7QZOe9b1XZQRY=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=Qah2SiyBl2FS+jmkXAjXIEYT5RwOWCod7ho3VoRVnMRqKiW/Olxhq6acQ4Sai1SSvzCINeJgdLe4tzDnjfsK3KdqHq38dhupkFF22PRKjwfGGK5mzo1PBdYOeT3vnIdziwsBEFnxRmaiqZ+N9WBfO3oumako3/c8q9Tgc4WoV7w= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=XI6DvK/L; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="XI6DvK/L" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 484B8C433F1; Sun, 24 Mar 2024 23:47:48 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324068; bh=t0VzECWIqPRM1v7GnYR0cuG7jLghPB7QZOe9b1XZQRY=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=XI6DvK/LMnb9LDF6U3K2VqnSkFa8YxMYjvXwV1EF/5YQrfznYRisiqLfgOOyuokzT 2Yeye8l1Eba1f2pNJvEdBc83z4ff1Pu1JS5nhLUqX4nPi/1+rkQCL6WToVHnB4vU6e i7WZmW08PjCslWgL5IH+ZtBXwT3OTNhrB93OrE0otNQCniVFjtq2gjf9qnHGf5VaDi B+qdp6kxt6kJC6HCvzp3BDXHRVnmWMte7Z45Q0bg5PbcXAwOEu8r9AHlytK0r9bcU8 JEI/AkvTTEe3dq2wW0iHpbXiJ5AiuJCE95krsRQjx1FixbxSKEYnG77UuRcmD5R4++ 02g1jJrdQsHIA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: =?UTF-8?q?Jonas=20Dre=C3=9Fler?= , Luiz Augusto von Dentz , Sasha Levin Subject: [PATCH 5.4 069/183] Bluetooth: Remove superfluous call to hci_conn_check_pending() Date: Sun, 24 Mar 2024 19:44:42 -0400 Message-ID: <20240324234638.1355609-70-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable From: Jonas Dre=C3=9Fler [ Upstream commit 78e3639fc8031275010c3287ac548c0bc8de83b1 ] The "pending connections" feature was originally introduced with commit 4c67bc74f016 ("[Bluetooth] Support concurrent connect requests") and 6bd57416127e ("[Bluetooth] Handling pending connect attempts after inquiry") to handle controllers supporting only a single connection request at a time. Later things were extended to also cancel ongoing inquiries on connect() with commit 89e65975fea5 ("Bluetooth: Cancel Inquiry before Create Connection"). With commit a9de9248064b ("[Bluetooth] Switch from OGF+OCF to using only opcodes"), hci_conn_check_pending() was introduced as a helper to consolidate a few places where we check for pending connections (indicated by the BT_CONNECT2 flag) and then try to connect. This refactoring commit also snuck in two more calls to hci_conn_check_pending(): - One is in the failure callback of hci_cs_inquiry(), this one probably makes sense: If we send an "HCI Inquiry" command and then immediately after a "Create Connection" command, the "Create Connection" command might fail before the "HCI Inquiry" command, and then we want to retry the "Create Connection" on failure of the "HCI Inquiry". - The other added call to hci_conn_check_pending() is in the event handler for the "Remote Name" event, this seems unrelated and is possibly a copy-paste error, so remove that one. Fixes: a9de9248064b ("[Bluetooth] Switch from OGF+OCF to using only opcodes= ") Signed-off-by: Jonas Dre=C3=9Fler Signed-off-by: Luiz Augusto von Dentz Signed-off-by: Sasha Levin --- net/bluetooth/hci_event.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/net/bluetooth/hci_event.c b/net/bluetooth/hci_event.c index 32793d22ba61c..2125421ad7465 100644 --- a/net/bluetooth/hci_event.c +++ b/net/bluetooth/hci_event.c @@ -2861,8 +2861,6 @@ static void hci_remote_name_evt(struct hci_dev *hdev,= struct sk_buff *skb) =20 BT_DBG("%s", hdev->name); =20 - hci_conn_check_pending(hdev); - hci_dev_lock(hdev); =20 conn =3D hci_conn_hash_lookup_ba(hdev, ACL_LINK, &ev->bdaddr); --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 318D722619F; Sun, 24 Mar 2024 23:47:49 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324071; cv=none; b=aA/2OEhb057G/eBgo7SvsxCdvrg+dCnMkAMuZMyztaIf2syUcaEDNEwoKC4gTkIzzzSEpT2Y364JegWAsBywHJYSaHUgi5oVx/Iak+I2ogth95AxE56WnFyhBoWb2/ZfRy9iNv3C/XHsvU2onCwry5mnDxUOTpvi5zza7nMVZEw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324071; c=relaxed/simple; bh=jXWQSR7sS6JQLyO8fhhXQBOPL95R16ONYnIldPqpWz0=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=bCLfau17qxZvZ2d9UhOogQN9npQ1f6rQ4RkzF1ff9jtb2awzqhvJh+DZT0Bim07ZoKzi5IyS7gPtvqqEHQ7vOkqs7X3v8jloJqz0SIJ29i0BafnheQLnZVQ2r3t754D/qPIz+kEmXYhbF6xYenV8Km5RV0UjlDkKRzxMa+nDyLM= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=H+eWXUE9; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="H+eWXUE9" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 2E7C0C43394; Sun, 24 Mar 2024 23:47:49 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324069; bh=jXWQSR7sS6JQLyO8fhhXQBOPL95R16ONYnIldPqpWz0=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=H+eWXUE9UfgKkDdPhxzIlIr/9jgKv/FQoTJuGAqGUxKkNIPS60bnGSKjvrsUDVXY7 Dy5tTtJdr8706SQ2pUIlqb++4peLyuSnMkAdG9D+bfHSCbma0f9Ofkzm5l4iotIDeA iB/sSETBYTHBjT7sGfe0g/kZ42Wh1teMzfd79GPDMgfYZ8PvTxRWCQ956u3hGCAOus 3Is6erSnAv0mpsFXWeFiEKSat7eAkKQAwMzMFAnHfBvt3jlD/cz0OdKbehWT53xX+k MR+RlZSYHtLxrWqUFPehp0B7l3JMXnrKBvWz7LL2KTBzdLY1HcPdX8KQtD0ehhPeFA ca/y+JR9u5EGA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Luiz Augusto von Dentz , Sasha Levin Subject: [PATCH 5.4 070/183] Bluetooth: hci_core: Fix possible buffer overflow Date: Sun, 24 Mar 2024 19:44:43 -0400 Message-ID: <20240324234638.1355609-71-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Luiz Augusto von Dentz [ Upstream commit 81137162bfaa7278785b24c1fd2e9e74f082e8e4 ] struct hci_dev_info has a fixed size name[8] field so in the event that hdev->name is bigger than that strcpy would attempt to write past its size, so this fixes this problem by switching to use strscpy. Fixes: dcda165706b9 ("Bluetooth: hci_core: Fix build warnings") Signed-off-by: Luiz Augusto von Dentz Signed-off-by: Sasha Levin --- net/bluetooth/hci_core.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/bluetooth/hci_core.c b/net/bluetooth/hci_core.c index 289fb28529f8c..c60204b639ab7 100644 --- a/net/bluetooth/hci_core.c +++ b/net/bluetooth/hci_core.c @@ -2129,7 +2129,7 @@ int hci_get_dev_info(void __user *arg) else flags =3D hdev->flags; =20 - strcpy(di.name, hdev->name); + strscpy(di.name, hdev->name, sizeof(di.name)); di.bdaddr =3D hdev->bdaddr; di.type =3D (hdev->bus & 0x0f) | ((hdev->dev_type & 0x03) << 4); di.flags =3D flags; --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 2E1D52261AA; Sun, 24 Mar 2024 23:47:50 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324072; cv=none; b=YRF0S4+q2sRafDrsVcBZXXe35NYJ1CDUYbsvthRO+ttj2j83WlJUQUVT2pxTYrud5I5Dyw/gJzoygUMgur59smhz1/ZTWBEJvyqI48z8/emA8NjsrNRDY6cAmwnywT4pxp2jC69h2d+A7sEuRQuBMkhy94I62t2m+gLlM7VyrXE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324072; c=relaxed/simple; bh=ExZL3/MFyzI92yOqyU4pBDdIcGauhn5Ds3d+UzfIZ/A=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=IRUZwZdNMjmihGkOKM9sV/EdtQZlOY3JpTPim0ueVIOiLQjkFxjLDipjkVa79pTUOp1pYKwZr5uR6c2kUF1PeeeH8c89V6WZ6B4iK0SZGbXzV668SFnLqpUL6+1YeR7BverteWEZSNqVCtnuG9pOyUUWNwY2X7WxaxSA5U8Gex4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=mBVW1uTQ; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="mBVW1uTQ" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 06C44C433C7; Sun, 24 Mar 2024 23:47:49 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324070; bh=ExZL3/MFyzI92yOqyU4pBDdIcGauhn5Ds3d+UzfIZ/A=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=mBVW1uTQN8WF3C98/puxssAKvpr2l51JMqZI3OQ7IcValmuaeKUtPP0Pn26qpLOvJ v9KedXRK+2h2j14EkDhKgGoTYbl7JKr9JUls+0+ORKGDIMoQh3ja7NksbOKmP9XRNt 2H6ZpzBWxGRybUYxjaAfb6AH36xEcXBqYDBT8z3jYdDPxND8ZCAyvmS487dz7V/eyt RaR6t8TwjhRwiELcgq3S7rRaRncsw6Z1t7K7ml5F4P+1GWqbVnBoUY/lJNlmOUTeBF D3J6/bymJzPuYhudPiHRMQpRT+S0EYRvTnJwBDl/9jTo0wpUrdceiaQHDG39mF1eDJ K7LaVT1GAtS7w== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Chen Ni , Simon Horman , Jakub Kicinski , Sasha Levin Subject: [PATCH 5.4 071/183] sr9800: Add check for usbnet_get_endpoints Date: Sun, 24 Mar 2024 19:44:44 -0400 Message-ID: <20240324234638.1355609-72-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Chen Ni [ Upstream commit 07161b2416f740a2cb87faa5566873f401440a61 ] Add check for usbnet_get_endpoints() and return the error if it fails in order to transfer the error. Signed-off-by: Chen Ni Reviewed-by: Simon Horman Fixes: 19a38d8e0aa3 ("USB2NET : SR9800 : One chip USB2.0 USB2NET SR9800 Dev= ice Driver Support") Link: https://lore.kernel.org/r/20240305075927.261284-1-nichen@iscas.ac.cn Signed-off-by: Jakub Kicinski Signed-off-by: Sasha Levin --- drivers/net/usb/sr9800.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/net/usb/sr9800.c b/drivers/net/usb/sr9800.c index 681e0def6356b..a5332e99102a5 100644 --- a/drivers/net/usb/sr9800.c +++ b/drivers/net/usb/sr9800.c @@ -736,7 +736,9 @@ static int sr9800_bind(struct usbnet *dev, struct usb_i= nterface *intf) =20 data->eeprom_len =3D SR9800_EEPROM_LEN; =20 - usbnet_get_endpoints(dev, intf); + ret =3D usbnet_get_endpoints(dev, intf); + if (ret) + goto out; =20 /* LED Setting Rule : * AABB:CCDD --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 11B8D2261B2; Sun, 24 Mar 2024 23:47:52 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324073; cv=none; b=sNOU11gJlv3MU5DNVbFiDzNfrhBmAuT6KBdp5qVo3QjO3w6wRYpvT9CIZ1V1TU3cK7D/IiJjieTUwWJaMsGejscwEfMQarTijiRetgDTuTmEtHOcWqHkqJhcSPFrDLWa+kdQzwn+hK4EL5G7iBVM29roROtMVvEe67nBBAodo2w= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324073; c=relaxed/simple; bh=3qxOdARrpY2hq8g/cSdqLb0ed/bDJFFK2NQnVfzf07Y=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=DfP9QrwtQJeEj2R2yEkIYwaVOY6KvFTIhKLXeg+Giw+QA8gvh7LFLfWJlH3z3iXpBHZg+Erbs8u6yChrKAjNTgJcUps2i0AIO/YS/yFsPfKXe+TjdPzFWCIcOKAXfYFyzgDf3tTWIkey22t7eg5v33LpBjFkuvSxOh0AmgnQlJA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=uzZz+EZW; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="uzZz+EZW" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 05241C433B1; Sun, 24 Mar 2024 23:47:50 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324071; bh=3qxOdARrpY2hq8g/cSdqLb0ed/bDJFFK2NQnVfzf07Y=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=uzZz+EZWFkkxIKc7f6Xw/2dX7v4M2/j/MC0JruoUVAd9vConte3uybBJWAC4C09PU Dw6lafi0NOZKSOIe2/2H2iRx2gmVsn/ybOPIPTxFki/gGeiuslsiHwJfZ9gRj4qA9z C4Ql0NaULUn4zG4EOAcuJ/190vA/00NxJsqfIxfBIIEHzi/cICjIkqDNyz8lBPMv6k VjUrepgGzv99B2r12yOFHNGiSufARvJ5fDud7fLE3dmAQeqzX3R1rjtDPEiGa9itqH g6+NQlzB1qnXr2P0PKqY481rqokDyr6wwjXd6wueF7RN4a1zrUgRLk9eacHW3UED+P QtSRlp/McCdBQ== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: =?UTF-8?q?Toke=20H=C3=B8iland-J=C3=B8rgensen?= , Alexei Starovoitov , Sasha Levin Subject: [PATCH 5.4 072/183] bpf: Fix hashtab overflow check on 32-bit arches Date: Sun, 24 Mar 2024 19:44:45 -0400 Message-ID: <20240324234638.1355609-73-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable From: Toke H=C3=B8iland-J=C3=B8rgensen [ Upstream commit 6787d916c2cf9850c97a0a3f73e08c43e7d973b1 ] The hashtab code relies on roundup_pow_of_two() to compute the number of hash buckets, and contains an overflow check by checking if the resulting value is 0. However, on 32-bit arches, the roundup code itself can overflow by doing a 32-bit left-shift of an unsigned long value, which is undefined behaviour, so it is not guaranteed to truncate neatly. This was triggered by syzbot on the DEVMAP_HASH type, which contains the same check, copied from the hashtab code. So apply the same fix to hashtab, by moving the overflow check to before the roundup. Fixes: daaf427c6ab3 ("bpf: fix arraymap NULL deref and missing overflow and= zero size checks") Signed-off-by: Toke H=C3=B8iland-J=C3=B8rgensen Message-ID: <20240307120340.99577-3-toke@redhat.com> Signed-off-by: Alexei Starovoitov Signed-off-by: Sasha Levin --- kernel/bpf/hashtab.c | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/kernel/bpf/hashtab.c b/kernel/bpf/hashtab.c index f1dec90f3a522..34c4f709b1ede 100644 --- a/kernel/bpf/hashtab.c +++ b/kernel/bpf/hashtab.c @@ -327,7 +327,13 @@ static struct bpf_map *htab_map_alloc(union bpf_attr *= attr) num_possible_cpus()); } =20 - /* hash table size must be power of 2 */ + /* hash table size must be power of 2; roundup_pow_of_two() can overflow + * into UB on 32-bit arches, so check that first + */ + err =3D -E2BIG; + if (htab->map.max_entries > 1UL << 31) + goto free_htab; + htab->n_buckets =3D roundup_pow_of_two(htab->map.max_entries); =20 htab->elem_size =3D sizeof(struct htab_elem) + @@ -337,10 +343,8 @@ static struct bpf_map *htab_map_alloc(union bpf_attr *= attr) else htab->elem_size +=3D round_up(htab->map.value_size, 8); =20 - err =3D -E2BIG; - /* prevent zero size kmalloc and check for u32 overflow */ - if (htab->n_buckets =3D=3D 0 || - htab->n_buckets > U32_MAX / sizeof(struct bucket)) + /* check for u32 overflow */ + if (htab->n_buckets > U32_MAX / sizeof(struct bucket)) goto free_htab; =20 cost =3D (u64) htab->n_buckets * sizeof(struct bucket) + --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 18FA71428E3; Sun, 24 Mar 2024 23:47:53 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324074; cv=none; b=A1CdolaeXMdSALaAA2FkZmesPMNH+kAEf3oqTCbm50SSixNk0Gt4EOm6fD+mNt5tEaW96o1uQ6dbapswU1oYGtWKk7gvFyaUCBi5VSzREzMd//x1xrWrG0uxZtp/MkPlkF2SQM5knZVSpNzpTntPaVQr7ijTT7F0whFDoUoQs0E= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324074; c=relaxed/simple; bh=haepUSdHZ5S5zXDOWWKLJiizzLp2HB7y+ELmu0P1SgE=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=Ke+vLq3tnBSPrVCIGuF+e4IIpvNWT9NZ/o5MO2/14usjZZCIVclsX3FVAhvazJcyoLndpqF8MAzfN7blco55FqX+1euuoWhw6XpfRrJCJtETe2wo3+Mj0pAgiZnzk0+SIpSmCg0fPr0FzISNNR2zs9SVQZ9l3MGtKMT4RMAPMMg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=sve8yJ3Z; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="sve8yJ3Z" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 3A44BC43390; Sun, 24 Mar 2024 23:47:52 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324073; bh=haepUSdHZ5S5zXDOWWKLJiizzLp2HB7y+ELmu0P1SgE=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=sve8yJ3Z79Mn3McbtbM0qkHxNtVkg3jx4W/q7CaRRFRyCflVpSNIN1/U/Jbve8tCd flF8FDZeh6iQvrFhEpAJADCzH1iSOCUrzlIQHKiqaenEjzC7gdeR1VqLhg+aQ6+F+3 dA6nUzoNaExITEsziCTlm1Iq81oWd0IT0116ByFngJeuq8rbKlNnzXDI/xOeuLos1D ZyvPVaUGI62RzvDke6mkoLhzUwHRypIXQUsUc/8M3o9sbHvQmTd7E6x4eXXvHG86pm ZzfBXbD3F9DM0/dHtPGwnLHsrpyyguT0W8ZQ8dqiwyk/sEHieK6SAlq2PImvxWyg+D px7KYF15KNPrg== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: =?UTF-8?q?Toke=20H=C3=B8iland-J=C3=B8rgensen?= , Bui Quang Minh , Alexei Starovoitov , Sasha Levin Subject: [PATCH 5.4 073/183] bpf: Fix stackmap overflow check on 32-bit arches Date: Sun, 24 Mar 2024 19:44:46 -0400 Message-ID: <20240324234638.1355609-74-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable From: Toke H=C3=B8iland-J=C3=B8rgensen [ Upstream commit 7a4b21250bf79eef26543d35bd390448646c536b ] The stackmap code relies on roundup_pow_of_two() to compute the number of hash buckets, and contains an overflow check by checking if the resulting value is 0. However, on 32-bit arches, the roundup code itself can overflow by doing a 32-bit left-shift of an unsigned long value, which is undefined behaviour, so it is not guaranteed to truncate neatly. This was triggered by syzbot on the DEVMAP_HASH type, which contains the same check, copied from the hashtab code. The commit in the fixes tag actually attempted to fix this, but the fix did not account for the UB, so the fix only works on CPUs where an overflow does result in a neat truncation to zero, which is not guaranteed. Checking the value before rounding does not have this problem. Fixes: 6183f4d3a0a2 ("bpf: Check for integer overflow when using roundup_po= w_of_two()") Signed-off-by: Toke H=C3=B8iland-J=C3=B8rgensen Reviewed-by: Bui Quang Minh Message-ID: <20240307120340.99577-4-toke@redhat.com> Signed-off-by: Alexei Starovoitov Signed-off-by: Sasha Levin --- kernel/bpf/stackmap.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/kernel/bpf/stackmap.c b/kernel/bpf/stackmap.c index 811071c227f11..bd8516d967453 100644 --- a/kernel/bpf/stackmap.c +++ b/kernel/bpf/stackmap.c @@ -111,11 +111,14 @@ static struct bpf_map *stack_map_alloc(union bpf_attr= *attr) } else if (value_size / 8 > sysctl_perf_event_max_stack) return ERR_PTR(-EINVAL); =20 - /* hash table size must be power of 2 */ - n_buckets =3D roundup_pow_of_two(attr->max_entries); - if (!n_buckets) + /* hash table size must be power of 2; roundup_pow_of_two() can overflow + * into UB on 32-bit arches, so check that first + */ + if (attr->max_entries > 1UL << 31) return ERR_PTR(-E2BIG); =20 + n_buckets =3D roundup_pow_of_two(attr->max_entries); + cost =3D n_buckets * sizeof(struct stack_map_bucket *) + sizeof(*smap); err =3D bpf_map_charge_init(&mem, cost + attr->max_entries * (sizeof(struct stack_map_bucket) + (u64)value_size)); --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 2E8B7181303; Sun, 24 Mar 2024 23:47:54 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324075; cv=none; b=NBxpR6WTEnYgREjsQCKcdQNOp8bh2C2IX9XYZoy1p+qHrE8cfujd7+yXPKcpUfsAW8CjDxVZc0PgbDLY6FFz+DiXbDTVzGPMzELJSSI2TNogBeLvGXCDGkPO4d7d+0nI+MRTVAlmYUwK2+NLnkuLxeL9YSegSy/DoTW9uVXIr+U= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324075; c=relaxed/simple; bh=8dXL1NGG6IxVREHyDsFoctPuUt9MiE7fpvULh0eGgbw=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=R2tWlYN90Ex0KkAtHp3NW/HPeVh1UYsM9+QxEShMZB7Mdw5xGlZyqjfu23Vfvj1sW5cnLte5i+YZ9Kte+IbMojx703GnrWN1wAeLhEtuUo9RRXTLaMM3EWvwsbsC4prlgKXonqH3McdvTzUuby58Xre6/B2aZgqdKtLlJ5PcVWo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=hF+WwWJS; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="hF+WwWJS" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 40526C43399; Sun, 24 Mar 2024 23:47:53 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324074; bh=8dXL1NGG6IxVREHyDsFoctPuUt9MiE7fpvULh0eGgbw=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=hF+WwWJSzYltf+TXTLWJlbmHW+S/E2BTrnSOT/HJJS0kdu7LWmV2C72o5asCzNlS6 ZyN2cjx/kq9iDklRxOWuviq2LIUKOcQ0VeDVRCwkrPg70jvGY0WBwoyTHEfaQzovFi iNA6Ob2EP2myv/0GHdm5SV7KcVflk9hjL0Lc92BZ027qSrwpdOONqtVgEQBjzg/ZGG sCC7MkKM+fmKbS/Hh41r7U8Av/5c534TZRfxF/XUyPJNWSdYgGduGjPpGpca0Ahor6 +44G1+pMLeh/je3Z2NcTjSRzHDCe6JAD9jxSNUTlnqLFuDr6SSxxKf3usTxJJKzoo0 lJyaq5OQA18DA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Shiming Cheng , Lena Wang , David Ahern , "David S . Miller" , Sasha Levin Subject: [PATCH 5.4 074/183] ipv6: fib6_rules: flush route cache when rule is changed Date: Sun, 24 Mar 2024 19:44:47 -0400 Message-ID: <20240324234638.1355609-75-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Shiming Cheng [ Upstream commit c4386ab4f6c600f75fdfd21143f89bac3e625d0d ] When rule policy is changed, ipv6 socket cache is not refreshed. The sock's skb still uses a outdated route cache and was sent to a wrong interface. To avoid this error we should update fib node's version when rule is changed. Then skb's route will be reroute checked as route cache version is already different with fib node version. The route cache is refreshed to match the latest rule. Fixes: 101367c2f8c4 ("[IPV6]: Policy Routing Rules") Signed-off-by: Shiming Cheng Signed-off-by: Lena Wang Reviewed-by: David Ahern Signed-off-by: David S. Miller Signed-off-by: Sasha Levin --- net/ipv6/fib6_rules.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/net/ipv6/fib6_rules.c b/net/ipv6/fib6_rules.c index 1727269396523..cdc8a49d7fc34 100644 --- a/net/ipv6/fib6_rules.c +++ b/net/ipv6/fib6_rules.c @@ -437,6 +437,11 @@ static size_t fib6_rule_nlmsg_payload(struct fib_rule = *rule) + nla_total_size(16); /* src */ } =20 +static void fib6_rule_flush_cache(struct fib_rules_ops *ops) +{ + rt_genid_bump_ipv6(ops->fro_net); +} + static const struct fib_rules_ops __net_initconst fib6_rules_ops_template = =3D { .family =3D AF_INET6, .rule_size =3D sizeof(struct fib6_rule), @@ -449,6 +454,7 @@ static const struct fib_rules_ops __net_initconst fib6_= rules_ops_template =3D { .compare =3D fib6_rule_compare, .fill =3D fib6_rule_fill, .nlmsg_payload =3D fib6_rule_nlmsg_payload, + .flush_cache =3D fib6_rule_flush_cache, .nlgroup =3D RTNLGRP_IPV6_RULE, .policy =3D fib6_rule_policy, .owner =3D THIS_MODULE, --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 3E789181313; Sun, 24 Mar 2024 23:47:55 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324076; cv=none; b=HEsEzu00AknwzQ0/DUBLyQHvzCIFbi/PB/hKqyhjaeREKi72bjD4KuU1A3kG/ehaLB0C0oNxsm5fvu4bRU8cOkEjsOr5Z2k1sxX4dUG/g475kseTfY3mG/kPY4g3yjUxLsdSct0032MY9D2gPnvDa3lIDjF4ICpYlHKcdMdHhf4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324076; c=relaxed/simple; bh=J1y2+vEL98RFUtzoFZEVFDdMACtwuD7o7HO3pfGGSxQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=KrKuwUHxjrDsjII8EZ/CkIrQSKGAVgG4EviUMNu4mK5vcJSLdVmnEhXbA38sBUsU7yf5z5XiL1N+rWPyE7KioH1vIrAJFbntHCTwsgm32WuGccUp/DWyA6HlchBcObyJ47PtrxItqrNqMQFD9sMHW8DjrUXnu/zyYrezZSmK6kU= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=Ncw8ioaJ; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="Ncw8ioaJ" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 560AEC43390; Sun, 24 Mar 2024 23:47:54 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324075; bh=J1y2+vEL98RFUtzoFZEVFDdMACtwuD7o7HO3pfGGSxQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Ncw8ioaJH89onJTGA4fdvQsKDg41aiFXUZQUn2+Hysf4aFaa/R1XxReQ8M2jMnlbz QT8v3JE5QnGw05YcUVmqFhJqXT+Ua6znPqtHRKot5CibAbvH84wYu9E7sRkW6tVWJG lWINjAW3GvxhZDCaoCW7rnhwic7uB0wuUkknfnBvS7YlhVVaIgMpE3jl5jR9grDHlp fMG8aYKkZBXCdgwCh4id18Wnurr7n8d2h0aBmKrJTxeQYnPJPKw1RKYgk1cEz7H5BK 2bKw8c5ayIGYh9Tjv6CePAg4p2NaH73VIYOFlV+/Tj+a1UNx0GQqFrx5SaMeSzfgon iJ/nCWhHrYwcQ== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Eric Dumazet , syzbot , "David S . Miller" , Sasha Levin Subject: [PATCH 5.4 075/183] net: ip_tunnel: make sure to pull inner header in ip_tunnel_rcv() Date: Sun, 24 Mar 2024 19:44:48 -0400 Message-ID: <20240324234638.1355609-76-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Eric Dumazet [ Upstream commit b0ec2abf98267f14d032102551581c833b0659d3 ] Apply the same fix than ones found in : 8d975c15c0cd ("ip6_tunnel: make sure to pull inner header in __ip6_tnl_rcv(= )") 1ca1ba465e55 ("geneve: make sure to pull inner header in geneve_rx()") We have to save skb->network_header in a temporary variable in order to be able to recompute the network_header pointer after a pskb_inet_may_pull() call. pskb_inet_may_pull() makes sure the needed headers are in skb->head. syzbot reported: BUG: KMSAN: uninit-value in __INET_ECN_decapsulate include/net/inet_ecn.h:2= 53 [inline] BUG: KMSAN: uninit-value in INET_ECN_decapsulate include/net/inet_ecn.h:27= 5 [inline] BUG: KMSAN: uninit-value in IP_ECN_decapsulate include/net/inet_ecn.h:302 = [inline] BUG: KMSAN: uninit-value in ip_tunnel_rcv+0xed9/0x2ed0 net/ipv4/ip_tunnel.= c:409 __INET_ECN_decapsulate include/net/inet_ecn.h:253 [inline] INET_ECN_decapsulate include/net/inet_ecn.h:275 [inline] IP_ECN_decapsulate include/net/inet_ecn.h:302 [inline] ip_tunnel_rcv+0xed9/0x2ed0 net/ipv4/ip_tunnel.c:409 __ipgre_rcv+0x9bc/0xbc0 net/ipv4/ip_gre.c:389 ipgre_rcv net/ipv4/ip_gre.c:411 [inline] gre_rcv+0x423/0x19f0 net/ipv4/ip_gre.c:447 gre_rcv+0x2a4/0x390 net/ipv4/gre_demux.c:163 ip_protocol_deliver_rcu+0x264/0x1300 net/ipv4/ip_input.c:205 ip_local_deliver_finish+0x2b8/0x440 net/ipv4/ip_input.c:233 NF_HOOK include/linux/netfilter.h:314 [inline] ip_local_deliver+0x21f/0x490 net/ipv4/ip_input.c:254 dst_input include/net/dst.h:461 [inline] ip_rcv_finish net/ipv4/ip_input.c:449 [inline] NF_HOOK include/linux/netfilter.h:314 [inline] ip_rcv+0x46f/0x760 net/ipv4/ip_input.c:569 __netif_receive_skb_one_core net/core/dev.c:5534 [inline] __netif_receive_skb+0x1a6/0x5a0 net/core/dev.c:5648 netif_receive_skb_internal net/core/dev.c:5734 [inline] netif_receive_skb+0x58/0x660 net/core/dev.c:5793 tun_rx_batched+0x3ee/0x980 drivers/net/tun.c:1556 tun_get_user+0x53b9/0x66e0 drivers/net/tun.c:2009 tun_chr_write_iter+0x3af/0x5d0 drivers/net/tun.c:2055 call_write_iter include/linux/fs.h:2087 [inline] new_sync_write fs/read_write.c:497 [inline] vfs_write+0xb6b/0x1520 fs/read_write.c:590 ksys_write+0x20f/0x4c0 fs/read_write.c:643 __do_sys_write fs/read_write.c:655 [inline] __se_sys_write fs/read_write.c:652 [inline] __x64_sys_write+0x93/0xd0 fs/read_write.c:652 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xcf/0x1e0 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x63/0x6b Uninit was created at: __alloc_pages+0x9a6/0xe00 mm/page_alloc.c:4590 alloc_pages_mpol+0x62b/0x9d0 mm/mempolicy.c:2133 alloc_pages+0x1be/0x1e0 mm/mempolicy.c:2204 skb_page_frag_refill+0x2bf/0x7c0 net/core/sock.c:2909 tun_build_skb drivers/net/tun.c:1686 [inline] tun_get_user+0xe0a/0x66e0 drivers/net/tun.c:1826 tun_chr_write_iter+0x3af/0x5d0 drivers/net/tun.c:2055 call_write_iter include/linux/fs.h:2087 [inline] new_sync_write fs/read_write.c:497 [inline] vfs_write+0xb6b/0x1520 fs/read_write.c:590 ksys_write+0x20f/0x4c0 fs/read_write.c:643 __do_sys_write fs/read_write.c:655 [inline] __se_sys_write fs/read_write.c:652 [inline] __x64_sys_write+0x93/0xd0 fs/read_write.c:652 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xcf/0x1e0 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x63/0x6b Fixes: c54419321455 ("GRE: Refactor GRE tunneling code.") Reported-by: syzbot Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller Signed-off-by: Sasha Levin --- net/ipv4/ip_tunnel.c | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/net/ipv4/ip_tunnel.c b/net/ipv4/ip_tunnel.c index ba1decf81fe32..906c37c7f80d5 100644 --- a/net/ipv4/ip_tunnel.c +++ b/net/ipv4/ip_tunnel.c @@ -365,7 +365,7 @@ int ip_tunnel_rcv(struct ip_tunnel *tunnel, struct sk_b= uff *skb, { struct pcpu_sw_netstats *tstats; const struct iphdr *iph =3D ip_hdr(skb); - int err; + int nh, err; =20 #ifdef CONFIG_NET_IPGRE_BROADCAST if (ipv4_is_multicast(iph->daddr)) { @@ -391,8 +391,21 @@ int ip_tunnel_rcv(struct ip_tunnel *tunnel, struct sk_= buff *skb, tunnel->i_seqno =3D ntohl(tpi->seq) + 1; } =20 + /* Save offset of outer header relative to skb->head, + * because we are going to reset the network header to the inner header + * and might change skb->head. + */ + nh =3D skb_network_header(skb) - skb->head; + skb_set_network_header(skb, (tunnel->dev->type =3D=3D ARPHRD_ETHER) ? ETH= _HLEN : 0); =20 + if (!pskb_inet_may_pull(skb)) { + DEV_STATS_INC(tunnel->dev, rx_length_errors); + DEV_STATS_INC(tunnel->dev, rx_errors); + goto drop; + } + iph =3D (struct iphdr *)(skb->head + nh); + err =3D IP_ECN_decapsulate(iph, skb); if (unlikely(err)) { if (log_ecn_error) --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 3DA23181302; Sun, 24 Mar 2024 23:47:56 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324077; cv=none; b=WNaqzmV+AEh/Z2I2eMt+G94RmNh3jHGohx9mTlrvBPL9ZaNmEQMcqmYmbw86XXMXOKkD1+DiY/fm/vMQh+prOZ8tTwLy8Omsd/H7EohWlQX9Bw2PJM7EagFL+cwzpQGQqjCpJ85qlGaGE39/YymKANsQDm0r8DZyaI4oDWd2YlE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324077; c=relaxed/simple; bh=3ntt01VQiuE0yhafQTxukKbAj9C/9BPACE20hDFacTk=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=lAxfEbCOwjAOkZlX9MRIxbe38SvjGAYYCiQoQ/ufrDhYVpsIZMZQJm3kp0k47Sqaa30JdieRR33Lnjn8sst9SgNNKXxdxHcMvgJ0uIuannMxBdbOtiq9nm6KVNrTIOTyeJrCB+QN1a/Szn9wcZNGcMtEEh2S9ENWRd8Y8e53mNg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=HxppQbLQ; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="HxppQbLQ" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 65A87C433C7; Sun, 24 Mar 2024 23:47:55 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324076; bh=3ntt01VQiuE0yhafQTxukKbAj9C/9BPACE20hDFacTk=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=HxppQbLQLQGgnAZD6vcXYegi8PxuKP/e8mwVsPzWpZzJaQS8PJlXWVp7FKoMpOteU 6LdlpcY7MotgU/UrgOuwH3rXIqBkh2NtbZeL65PDu60Th5Ved7EMpgJ9uQhkFeXm8x ahQcPOSOtzpbaTino5f++wGwZV7DU6wO4NKpdrYMYe8fwL5bSchcbtD3zodAb1ZAoi b23ofniRS0IhMyzlurUUTq5TyrGE2O6v06nrGCRKP5+l1MA7ES0jNVZzI/XJusfGDl x3u3/bhwZAFPPmqYihecGaetobnqTZ2hn0bLR7HvcS3k8aPn/3blqN+kYj79II8lf/ vqzuSBlnqsrlA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Jie Wang , Jijie Shao , "David S . Miller" , Sasha Levin Subject: [PATCH 5.4 076/183] net: hns3: fix port duplex configure error in IMP reset Date: Sun, 24 Mar 2024 19:44:49 -0400 Message-ID: <20240324234638.1355609-77-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Jie Wang [ Upstream commit 11d80f79dd9f871a52feba4bf24b5ac39f448eb7 ] Currently, the mac port is fixed to configured as full dplex mode in hclge_mac_init() when driver initialization or reset restore. Users may change the mode to half duplex with ethtool, so it may cause the user configuration dropped after reset. To fix it, don't change the duplex mode when resetting. Fixes: 2d03eacc0b7e ("net: hns3: Only update mac configuation when necessar= y") Signed-off-by: Jie Wang Signed-off-by: Jijie Shao Signed-off-by: David S. Miller Signed-off-by: Sasha Levin --- drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c b/driv= ers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c index 6b2d54c972b7c..f5956977fe39a 100644 --- a/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c +++ b/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c @@ -2588,7 +2588,10 @@ static int hclge_mac_init(struct hclge_dev *hdev) int ret; =20 hdev->support_sfp_query =3D true; - hdev->hw.mac.duplex =3D HCLGE_MAC_FULL; + + if (!test_bit(HCLGE_STATE_RST_HANDLING, &hdev->state)) + hdev->hw.mac.duplex =3D HCLGE_MAC_FULL; + ret =3D hclge_cfg_mac_speed_dup_hw(hdev, hdev->hw.mac.speed, hdev->hw.mac.duplex); if (ret) { --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 3D03E181329; Sun, 24 Mar 2024 23:47:57 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324078; cv=none; b=JZTMWi0WFhpMFEWxSbicAci8K4mHi2GAhslEvZJXwTs7IzajeUFcPRPDPp2DaiYiBfNZLHFI69317CrQbM8JnbbNhaZBdRZoBie3kkBfUBg4p299rsDrhhGxzLuBtpMz4wthlKw1twSU5XX0k6lMCphNcoDk2t2xqky+kcxke9I= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324078; c=relaxed/simple; bh=4DaxpUzWlRp6+J1iAwHH9aJOrxqrNkhArjxWeuBu49s=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=iiWsPcHBuKjPIhxwjKdwXWAHcx9KJ4j7ZaQfqmbs6KPyUHvi7joxOz5RJt2C1QQFwhZiWm7IYuRnieZakGRykZg/E4yuZOy+w3lq6WYJtERTw8GkR/8Vm5IweHDJKZflXoWlIQtnd0Ga/blataoRJE6FrYnvsd6XVSGgQ3kFUYc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=nvHL5XmM; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="nvHL5XmM" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 65BA1C433F1; Sun, 24 Mar 2024 23:47:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324077; bh=4DaxpUzWlRp6+J1iAwHH9aJOrxqrNkhArjxWeuBu49s=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=nvHL5XmMnCuKAEA2sj3NISX+y55TToVoWak5z7DEs/m1eVwl+5tt462xuVH8MpzX5 mDPXdOu/9cdh/lXj58dg9QlA8KWLcvXK8ib1JkvNuQvS1bLmYj1qRW6YmJfottBTna 28KR30CDOE8Y+iAsCYBkAfEQza7tVLqMfO11MmGDqQgGoY5RrNrukGRbkN6eB7WXuu kM/V51tmdTasz1nbqSOSkJCfwgwjMiRyrefw7HtbkH/3spIMq6b8hUpkeaZZShx09n at8rY6n2QP8903f85ZS263aM+/N1ghgViTwl/w7vnGnlFUEvzrPdd6LgTLbW7ETXic xhL0c4cNs0tPQ== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Gavrilov Ilia , Jason Xing , "David S . Miller" , Sasha Levin Subject: [PATCH 5.4 077/183] tcp: fix incorrect parameter validation in the do_tcp_getsockopt() function Date: Sun, 24 Mar 2024 19:44:50 -0400 Message-ID: <20240324234638.1355609-78-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Gavrilov Ilia [ Upstream commit 716edc9706deb3bb2ff56e2eeb83559cea8f22db ] The 'len' variable can't be negative when assigned the result of 'min_t' because all 'min_t' parameters are cast to unsigned int, and then the minimum one is chosen. To fix the logic, check 'len' as read from 'optlen', where the types of relevant variables are (signed) int. Fixes: 1da177e4c3f4 ("Linux-2.6.12-rc2") Signed-off-by: Gavrilov Ilia Reviewed-by: Jason Xing Signed-off-by: David S. Miller Signed-off-by: Sasha Levin --- net/ipv4/tcp.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/net/ipv4/tcp.c b/net/ipv4/tcp.c index 8d7933989de0e..8ebcff40bc5ac 100644 --- a/net/ipv4/tcp.c +++ b/net/ipv4/tcp.c @@ -3451,11 +3451,11 @@ static int do_tcp_getsockopt(struct sock *sk, int l= evel, if (get_user(len, optlen)) return -EFAULT; =20 - len =3D min_t(unsigned int, len, sizeof(int)); - if (len < 0) return -EINVAL; =20 + len =3D min_t(unsigned int, len, sizeof(int)); + switch (optname) { case TCP_MAXSEG: val =3D tp->mss_cache; --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 391A018131D; Sun, 24 Mar 2024 23:47:58 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324079; cv=none; b=W3ROHds3qi9kch64IK4A+kASq27pYfiFh/AsmQKmWACpyrqylsKd0Uv8Hw0gs6kYfwpLkD8gl5mUrmiHlMxCZQRoiYIJNY1Rym8B5j3bIBiMw3Het7c4SVcwDjvfGCR45KyOcJaCqwj0pvkquFQtSSgh7rnQ2G0QKyG1gIjF9ak= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324079; c=relaxed/simple; bh=ailGeBSfJgMzEpZuwHurgRKPqnFr2eQF5sRu0J0sxfo=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=K2oC5YQn43vTz18o98PfoLqHgDtn8WUOOGzsv+QtTSLNHqveVuzK0Rls9S6JI5Jgo0NwraQbQ/anZBrr5eN3KGpFAfw2KCaRDeCzPDtvRM4QYq2mV0qQoAC3QxWV67DfCMdlaEk4/wxe9+8WKBorkxP266WQjmDPS0YiXgmfwxU= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=DHW+FS6w; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="DHW+FS6w" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 62BD6C433C7; Sun, 24 Mar 2024 23:47:57 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324078; bh=ailGeBSfJgMzEpZuwHurgRKPqnFr2eQF5sRu0J0sxfo=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=DHW+FS6wEW1n7BGGcMXlFcsce8jk9rFzn/j+0u09Ov09mUbnkcuIzjtTD8Imxes3q WsmU8v2ESkMCk6GYU0ratLOGOjnX2vnfEY23XxcEIJp2rZ74GqHLBkn+5og0oL9R9D V8crDozKdJTxghI/rdCzfwxszeXTsGLZu6tfFjeI79c9HIinjOMqxnKnhlzFUhVrpF I2TTmhEpCOSEUbdvnsdaPY+7q5Dx1wb1QZO69ySxTCyP0P7ZqjwT8LXHOm8t+fn4rY fgDK4pQHhbxFWSySbgWQFr+QSDopiCCiTeA0sZM94OZAoHPVs+b++BAXh+jUFy3g6S MsWJ0i6iKct6w== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Gavrilov Ilia , Tom Parkin , "David S . Miller" , Sasha Levin Subject: [PATCH 5.4 078/183] l2tp: fix incorrect parameter validation in the pppol2tp_getsockopt() function Date: Sun, 24 Mar 2024 19:44:51 -0400 Message-ID: <20240324234638.1355609-79-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Gavrilov Ilia [ Upstream commit 955e9876ba4ee26eeaab1b13517f5b2c88e73d55 ] The 'len' variable can't be negative when assigned the result of 'min_t' because all 'min_t' parameters are cast to unsigned int, and then the minimum one is chosen. To fix the logic, check 'len' as read from 'optlen', where the types of relevant variables are (signed) int. Fixes: 3557baabf280 ("[L2TP]: PPP over L2TP driver core") Reviewed-by: Tom Parkin Signed-off-by: Gavrilov Ilia Signed-off-by: David S. Miller Signed-off-by: Sasha Levin --- net/l2tp/l2tp_ppp.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/net/l2tp/l2tp_ppp.c b/net/l2tp/l2tp_ppp.c index c54cb59593ef8..7d3c782e5ab1e 100644 --- a/net/l2tp/l2tp_ppp.c +++ b/net/l2tp/l2tp_ppp.c @@ -1375,11 +1375,11 @@ static int pppol2tp_getsockopt(struct socket *sock,= int level, int optname, if (get_user(len, optlen)) return -EFAULT; =20 - len =3D min_t(unsigned int, len, sizeof(int)); - if (len < 0) return -EINVAL; =20 + len =3D min_t(unsigned int, len, sizeof(int)); + err =3D -ENOTCONN; if (sk->sk_user_data =3D=3D NULL) goto end; --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id F3CEC181334; Sun, 24 Mar 2024 23:47:59 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324080; cv=none; b=XbhxvEmlRUjGZS+T8iqVKLDtERiX8WUiOHXur5hdKT754xPXXuiP3atxdCZ51LzxvdoM5MtLIjf/5l/wo4FOQm0qvN3t0d0sP1hASXihrGXvD4FFbxSdCxqfNQyzfN7wcbY4TA27NtRqcKo1N0u0viyZ8Sptwbo+OiGfAHJSMgQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324080; c=relaxed/simple; bh=Jl624/yQTx+aht0Fvw+Xpx7HC3ohezQCwwbaYhQE/nY=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=mz1lL+mqXZEeZ9UPw1FceJlwnS3dsVO5h2K4K/pPPr++pOE/FPEXcnleY3ja+DEzMRe33YpOivyrx4sPz+qm8Vjlu7JpE15j5eZikm2H9Ofmx7ABpZB8/urzM8qTC/ao2Sz4grtVmGzFVeMMzn+aUuzGycOc3ldIKahOID/uC0Q= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=F9sQV0pl; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="F9sQV0pl" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 65F75C43390; Sun, 24 Mar 2024 23:47:58 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324079; bh=Jl624/yQTx+aht0Fvw+Xpx7HC3ohezQCwwbaYhQE/nY=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=F9sQV0pl8gUPmgV7p53+XCEyY06n3GqNUxkskAcQZ7E09WoZLsdayeyScPj3rhK06 8cdfLFZsNh4aws87iAq7J8H1IWmCYsMT00VypdVL5iisypBixgXD67naVC2M68fBa0 hLvgHEnj/PPw1Jjd9A9XAd7vM63RcacOHrObbJjvfopnSm6stTdPFXLwwx83sKglUy RFmrL38xzpD8vYlCzGP4bNpAoCLb0SCbQik09hRkkFeQ7ALv4EWOqKGJAU4/VHYwVJ fIcvR0DaX/kT9l2omxNg1cR6PMa2gIiGMmIuuHT6P7k0f1nHUWg5qUHr30OC8pZaCh gyPnaAnD3Uz+A== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Gavrilov Ilia , Willem de Bruijn , "David S . Miller" , Sasha Levin Subject: [PATCH 5.4 079/183] udp: fix incorrect parameter validation in the udp_lib_getsockopt() function Date: Sun, 24 Mar 2024 19:44:52 -0400 Message-ID: <20240324234638.1355609-80-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Gavrilov Ilia [ Upstream commit 4bb3ba7b74fceec6f558745b25a43c6521cf5506 ] The 'len' variable can't be negative when assigned the result of 'min_t' because all 'min_t' parameters are cast to unsigned int, and then the minimum one is chosen. To fix the logic, check 'len' as read from 'optlen', where the types of relevant variables are (signed) int. Fixes: 1da177e4c3f4 ("Linux-2.6.12-rc2") Reviewed-by: Willem de Bruijn Signed-off-by: Gavrilov Ilia Signed-off-by: David S. Miller Signed-off-by: Sasha Levin --- net/ipv4/udp.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/net/ipv4/udp.c b/net/ipv4/udp.c index a6f982b2d32af..3b3f944798850 100644 --- a/net/ipv4/udp.c +++ b/net/ipv4/udp.c @@ -2679,11 +2679,11 @@ int udp_lib_getsockopt(struct sock *sk, int level, = int optname, if (get_user(len, optlen)) return -EFAULT; =20 - len =3D min_t(unsigned int, len, sizeof(int)); - if (len < 0) return -EINVAL; =20 + len =3D min_t(unsigned int, len, sizeof(int)); + switch (optname) { case UDP_CORK: val =3D READ_ONCE(up->corkflag); --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 812D31802C0; Sun, 24 Mar 2024 23:48:00 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324081; cv=none; b=NpQ4Ff+FuCMgdly2zhp5HC+xzsqrGUb4ETtQFIkjflZZiK7JAEhBjjEpbHR7WhNsn6+VBEE7WnnIxRxe4qajPvxJc6mG6YMof+/Buj4SvT4rwlTQZgjhIlXR472XFVv55qQ/+uCPNjNWcNIBRFEkVnJ4w2Qqxn7W+CjqvIC0Dpw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324081; c=relaxed/simple; bh=jlq9gbxywDwNsqbzWZRis+/iVmpZIiTCgDSTxuMz0/E=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=NelOyhFxWWt94SEBgUq3FxXHqzxvfCWSHLW+h2rM6uhbN2dcly4O0SDE6x/FhW66jRxTn7lDZ/LZCYakO1NIrnVLKjs//rgAAd4A0KvBofLEILQZ/1l/+hI2THC1TieTZ60Jup86bIQDLbIaJFQS7wc+E0HZbS40HONR9Bq9ou8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=KLQzYfrZ; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="KLQzYfrZ" Received: by smtp.kernel.org (Postfix) with ESMTPSA id BB364C433C7; Sun, 24 Mar 2024 23:47:59 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324080; bh=jlq9gbxywDwNsqbzWZRis+/iVmpZIiTCgDSTxuMz0/E=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=KLQzYfrZ0xE//iAFvYOQxtNoiMUzp+SzbTkkDVOcwiozP3mmBE5uiPn/BBrbqKKT2 Sz0Ma+/OJlMDtzMpPd9vk5huil2TyfzBWeqonKUdMnKmfVWh0Imrc4OfY720Q0zRWX F8zzSO9c4Zf1ZOLanlmfsp0cyHuo+PO6ACor6Qln2Lr0Nye7aIbUJBMsTKRPVdEiMf l4y4RHIbJG0YlzeZkTZ8ct9PrXrp6SCtnarYS5FmuCdwcD7RtKBA6exFhmuWln2FjQ WDhhwwnY7laJMlzOtvHLpUbg/mRXCbYJIJXVhSjEtzxdKwudGLSYcQ2aganvcj9RIu FiUg39YIx+Oaw== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Gavrilov Ilia , "David S . Miller" , Sasha Levin Subject: [PATCH 5.4 080/183] net: kcm: fix incorrect parameter validation in the kcm_getsockopt) function Date: Sun, 24 Mar 2024 19:44:53 -0400 Message-ID: <20240324234638.1355609-81-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Gavrilov Ilia [ Upstream commit 3ed5f415133f9b7518fbe55ba9ae9a3f5e700929 ] The 'len' variable can't be negative when assigned the result of 'min_t' because all 'min_t' parameters are cast to unsigned int, and then the minimum one is chosen. To fix the logic, check 'len' as read from 'optlen', where the types of relevant variables are (signed) int. Fixes: ab7ac4eb9832 ("kcm: Kernel Connection Multiplexor module") Signed-off-by: Gavrilov Ilia Signed-off-by: David S. Miller Signed-off-by: Sasha Levin --- net/kcm/kcmsock.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/net/kcm/kcmsock.c b/net/kcm/kcmsock.c index 8a8ea7e6774d5..920b0ebf1cb80 100644 --- a/net/kcm/kcmsock.c +++ b/net/kcm/kcmsock.c @@ -1277,10 +1277,11 @@ static int kcm_getsockopt(struct socket *sock, int = level, int optname, if (get_user(len, optlen)) return -EFAULT; =20 - len =3D min_t(unsigned int, len, sizeof(int)); if (len < 0) return -EINVAL; =20 + len =3D min_t(unsigned int, len, sizeof(int)); + switch (optname) { case KCM_RECV_DISABLE: val =3D kcm->rx_disabled; --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 6C38417F38F; Sun, 24 Mar 2024 23:48:01 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324081; cv=none; b=WoqQ3mTxjBIFvIvtPPCtbRYPP/luldJVSRqtuVHYT3cuvLePLQGJ02qFNCGm/AipuByr0Bi9JnFxIM/P4FsfRY8zBwyEUiS02WdXLKOlZdxLm7RGwLy3kZPyCJkuJDN/bkd6XhGX2IDSqSsowS4afkE9QDxBhdJhzMUeudIWEZ8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324081; c=relaxed/simple; bh=78i/RA49PesZ7YOjbsrbPRisIy940gQvj2kC6obZGY4=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=iPw8APwkT+MojnxHJrSzynkEYCbHhky3dRKfJW382A1uHwyjBCRMfe2oFl4fiwmvjD/+PHrRv5z3ke77F7LFmselMCq2sBz3poal7sWrtnKtcrcrmLYxdF2JDGupaTjzZ5F5yKEzk3/ZqtUPyNnCbhwavuJXyFEgq6CXvzz9gPs= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=qmEXhu1h; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="qmEXhu1h" Received: by smtp.kernel.org (Postfix) with ESMTPSA id A6A90C43390; Sun, 24 Mar 2024 23:48:00 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324081; bh=78i/RA49PesZ7YOjbsrbPRisIy940gQvj2kC6obZGY4=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=qmEXhu1hT6rvlvk33iF+nIaeu426WyxkfN2kM5+eCFtFxf3fUlICiSnAsno66YbWR erj8+p/mJz7aDZDOurTR4Im8i0W8+pvj9yFg5NFtojZPXq+RMTq7h3Q0pQr/3PSSZt jHQfz2p4/KSJrjJlW1ZNHU2Gg+3jqLIX+6IHg2PxpfLLhTrabKNCC/17ClX1IGYU8W tPBU6luB1xvOkDzMIwfz1YMPC44yQQw18Kc3FPwZJw+Wcv32BN3H3b7gkr+H9jwTkG NdRcDa4OIApaU461GCv95R4wEeGUPKvdgpLl0TV6/F/OtJi02MHFAYY8UTP1LDJdMS GGQAn1G7wwFnA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Gavrilov Ilia , "David S . Miller" , Sasha Levin Subject: [PATCH 5.4 081/183] net/x25: fix incorrect parameter validation in the x25_getsockopt() function Date: Sun, 24 Mar 2024 19:44:54 -0400 Message-ID: <20240324234638.1355609-82-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Gavrilov Ilia [ Upstream commit d6eb8de2015f0c24822e47356f839167ebde2945 ] The 'len' variable can't be negative when assigned the result of 'min_t' because all 'min_t' parameters are cast to unsigned int, and then the minimum one is chosen. To fix the logic, check 'len' as read from 'optlen', where the types of relevant variables are (signed) int. Fixes: 1da177e4c3f4 ("Linux-2.6.12-rc2") Signed-off-by: Gavrilov Ilia Signed-off-by: David S. Miller Signed-off-by: Sasha Levin --- net/x25/af_x25.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/net/x25/af_x25.c b/net/x25/af_x25.c index 43dd489ad6db9..851096110b4d4 100644 --- a/net/x25/af_x25.c +++ b/net/x25/af_x25.c @@ -470,12 +470,12 @@ static int x25_getsockopt(struct socket *sock, int le= vel, int optname, if (get_user(len, optlen)) goto out; =20 - len =3D min_t(unsigned int, len, sizeof(int)); - rc =3D -EINVAL; if (len < 0) goto out; =20 + len =3D min_t(unsigned int, len, sizeof(int)); + rc =3D -EFAULT; if (put_user(len, optlen)) goto out; --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 6A2D228BD28; Sun, 24 Mar 2024 23:48:02 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324083; cv=none; b=T1RILeDX2UzjqHEBBagPzv4PAolPtP/Nh2D84xQwDoDpfsArAYNMKW4gqEydSigi6BwG2DqWcSZYzNf4GCgFu3dEgUrjdtmOnEJdb+z5c6v3HcgHzOMRgeK3Ar6o9dSThWmAoonF1w3zi0Vuk9HT+H4TT7085tR5/LLrml3YPiU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324083; c=relaxed/simple; bh=ir/H48WBd9iJTs/xTH8Oz5/Qn+uxWcc9t3DZeEZ5L6g=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=MXBFmEYl9IM9beRawOnUXbtKWviq4ZQlGd5BbmwNB/M3wHrUrMwyXtR/7fBVwbzWqfmvLaeC11J+C7RwUi1mdlAB8u17bfGbM76A+7IL7tv1zaEEZnWlnqCkswvKP1Ati+HBG5kV97nubkv3PPQiwdmw0d/ME0kcLCqHI+PTELE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=lmiQzhgV; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="lmiQzhgV" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 90280C43394; Sun, 24 Mar 2024 23:48:01 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324082; bh=ir/H48WBd9iJTs/xTH8Oz5/Qn+uxWcc9t3DZeEZ5L6g=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=lmiQzhgV8Pl9X32Wp5oBt3Njthn6tB+Z2KEaOIsaIyprQ/934nhu/2kWrdzIvBBlK dBqOsg4Vh4/2JDI9VoFHoWlljfmWvIVe5MIte0IbKq4KYF/qXvfwwQ4DJ9Xj5g1fiZ 5bxC2iVG+VW1Ho9cbR4dod5bgWKIm4xbh8wBYHAnwfP7AUsZO8EpulEGpmSFV/5tvB X6p4cWU631p1Cjh0V7Tz/MeMZ84MZP78qnVpZE3jfHCQqrPBrSdrjYMhq3qjGXwo1b FD5UsDLDNvwD+RHi7o48hRsFC149ZIDFzS+suiauHZpcCnsKq5HA5O4220QQSBYL9b livId0xoFXr1A== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Duoming Zhou , Louis Peens , Jakub Kicinski , Sasha Levin Subject: [PATCH 5.4 082/183] nfp: flower: handle acti_netdevs allocation failure Date: Sun, 24 Mar 2024 19:44:55 -0400 Message-ID: <20240324234638.1355609-83-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Duoming Zhou [ Upstream commit 84e95149bd341705f0eca6a7fcb955c548805002 ] The kmalloc_array() in nfp_fl_lag_do_work() will return null, if the physical memory has run out. As a result, if we dereference the acti_netdevs, the null pointer dereference bugs will happen. This patch adds a check to judge whether allocation failure occurs. If it happens, the delayed work will be rescheduled and try again. Fixes: bb9a8d031140 ("nfp: flower: monitor and offload LAG groups") Signed-off-by: Duoming Zhou Reviewed-by: Louis Peens Link: https://lore.kernel.org/r/20240308142540.9674-1-duoming@zju.edu.cn Signed-off-by: Jakub Kicinski Signed-off-by: Sasha Levin --- drivers/net/ethernet/netronome/nfp/flower/lag_conf.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/drivers/net/ethernet/netronome/nfp/flower/lag_conf.c b/drivers= /net/ethernet/netronome/nfp/flower/lag_conf.c index 63907aeb3884e..3167f9675ae0f 100644 --- a/drivers/net/ethernet/netronome/nfp/flower/lag_conf.c +++ b/drivers/net/ethernet/netronome/nfp/flower/lag_conf.c @@ -308,6 +308,11 @@ static void nfp_fl_lag_do_work(struct work_struct *wor= k) =20 acti_netdevs =3D kmalloc_array(entry->slave_cnt, sizeof(*acti_netdevs), GFP_KERNEL); + if (!acti_netdevs) { + schedule_delayed_work(&lag->work, + NFP_FL_LAG_DELAY); + continue; + } =20 /* Include sanity check in the loop. It may be that a bond has * changed between processing the last notification and the --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id CB58628BD41; Sun, 24 Mar 2024 23:48:03 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324084; cv=none; b=a/RKY9ZupltgAUDW511Fo3ISCZG9ghXXzu6wfn1D/WYH30zkwYMmqi8O+UDwMiHeJyXIjG7fRoU2xZDz/RqbAarFv3loy7+oniHUndp4647YuEnEGppK6xzKt2qtd+Z6IgEu27oCqatAAYNvQ5vC7y9yDwnP7p6ZRM98k5qOWz0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324084; c=relaxed/simple; bh=JHlJe7dynY8RwxF97K0HHSqIimBBSR+N9Lxy8Bd9G48=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=U3VjT1llgwtgG1B4GqaG2oLtSnCq8/mNzsqf85Ml6bkSVdvhWR5g/zEsjtDfMneSoj7aEBTpRFdxNBF2rjy/OZxCzgleKYS7dCEkwMM5yXOXTzqia2xiNALAff0NUa564lxiPW/ZnzDiQkl0eQKfWZJI0ljc3ksSvvL6Jw8GC9A= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=uzpbaXl7; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="uzpbaXl7" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 8D8DDC433F1; Sun, 24 Mar 2024 23:48:02 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324083; bh=JHlJe7dynY8RwxF97K0HHSqIimBBSR+N9Lxy8Bd9G48=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=uzpbaXl7I4riUuyO7AOB8SQSp6GnuM1YNc4xbAtsS+J8ScPiQZ66xesA6hW566EzT DLOdIw+5aY+OsAIOV0dgBEEVOIoWHY153mPjnIeRLNjip+NhMHMWb0HNOhU+VPfuqB CxcN/jjluZWEFrC6tGGHbF0942ig9BPjTXp6geeIfepWYxFUv7YELWIq2neI10huXZ qf1g1OUl5jAdfqV9ojdbY0g+qj6/bq6aHYIj5W2wWdynB+SpGXapQ6qXfw30BBzK+F zaeoVtbtVhr6SQoB+vA0DnGL3U1UAHa6GL96gDQk2UXcUTeymRMC2z2LTDa8pDgeSg 6DqsSoslhfs5g== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Ming Lei , Patrick Plenefisch , Mike Snitzer , Sasha Levin Subject: [PATCH 5.4 083/183] dm raid: fix false positive for requeue needed during reshape Date: Sun, 24 Mar 2024 19:44:56 -0400 Message-ID: <20240324234638.1355609-84-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Ming Lei [ Upstream commit b25b8f4b8ecef0f48c05f0c3572daeabefe16526 ] An empty flush doesn't have a payload, so it should never be looked at when considering to possibly requeue a bio for the case when a reshape is in progress. Fixes: 9dbd1aa3a81c ("dm raid: add reshaping support to the target") Reported-by: Patrick Plenefisch Signed-off-by: Ming Lei Signed-off-by: Mike Snitzer Signed-off-by: Sasha Levin --- drivers/md/dm-raid.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/md/dm-raid.c b/drivers/md/dm-raid.c index 9f05ae2b90191..1ccd765fad938 100644 --- a/drivers/md/dm-raid.c +++ b/drivers/md/dm-raid.c @@ -3343,14 +3343,14 @@ static int raid_map(struct dm_target *ti, struct bi= o *bio) struct mddev *mddev =3D &rs->md; =20 /* - * If we're reshaping to add disk(s)), ti->len and + * If we're reshaping to add disk(s), ti->len and * mddev->array_sectors will differ during the process * (ti->len > mddev->array_sectors), so we have to requeue * bios with addresses > mddev->array_sectors here or * there will occur accesses past EOD of the component * data images thus erroring the raid set. */ - if (unlikely(bio_end_sector(bio) > mddev->array_sectors)) + if (unlikely(bio_has_data(bio) && bio_end_sector(bio) > mddev->array_sect= ors)) return DM_MAPIO_REQUEUE; =20 md_handle_request(mddev, bio); --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 48FDC28BD38; Sun, 24 Mar 2024 23:48:04 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324084; cv=none; b=QnINPNtKv7FrmWilU/s575/EcyxeXlbBHAtSAhQnjFNJXp73RAM7v332A8l8FB1RtXk3uyY8uozXeWGZSPPhUjApolLcUuyoeRU46FyWpS2fxgjuraBLPhTl4+Vsn5fYPTb6lImGlFDyn3cHC407BQF+MxTzyGaf+Jff2dclFM0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324084; c=relaxed/simple; bh=6a18xJP4TKulJ2O1rtzThoUgjvp7ZLrpu7iAywX1MsI=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=XpA2P3DC5XCCQtbJeqPKmMRWyHX5I6ReOrGcLYMtE9Zjaw1NhtAJyo0iKuII1TyepHNRQrv2/ZiBjtWPr4vV8pkUkkiWlWPfqlTFq9XhOHR5NVRkiCv5LIX586QVlcCyxERNic9VA/cJbI0Z/uviNcJbxnWeCCiQNTmmMmQl3zA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=EAgSuIRZ; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="EAgSuIRZ" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 88335C433C7; Sun, 24 Mar 2024 23:48:03 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324084; bh=6a18xJP4TKulJ2O1rtzThoUgjvp7ZLrpu7iAywX1MsI=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=EAgSuIRZ+yUBCPFdoClOXc1CjmqPuus9HTTYqb57wF9us1aMHL7LCMVgeerZUCXcK R9IxUzK4NkoqTr5JR/CkP9rK7FXvx1Gu26ehfkytpbBFu8lPJWQ7JJasJFibYdxIYZ cmmVmdoc7VXwniVd1xnM8XK5VVjHmWPtfzBkUMlu4U1fxIsF+yMHyS5IwidgwchOhP ubIu1j6cAnRK5F2Szv6galcd/u+SZFhZxxL8QUL9ZA7patgUcNKjFXtCTx/F/BYoht YcqQxcS2D2uhefQ/72Ne+UNyQg/VYrShXrUjq1tw1mUg+SGILsMBx/jya6WfYLt8Uu DsZavG7Yi3H9g== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Mikulas Patocka , Mike Snitzer , Sasha Levin Subject: [PATCH 5.4 084/183] dm: call the resume method on internal suspend Date: Sun, 24 Mar 2024 19:44:57 -0400 Message-ID: <20240324234638.1355609-85-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Mikulas Patocka [ Upstream commit 65e8fbde64520001abf1c8d0e573561b4746ef38 ] There is this reported crash when experimenting with the lvm2 testsuite. The list corruption is caused by the fact that the postsuspend and resume methods were not paired correctly; there were two consecutive calls to the origin_postsuspend function. The second call attempts to remove the "hash_list" entry from a list, while it was already removed by the first call. Fix __dm_internal_resume so that it calls the preresume and resume methods of the table's targets. If a preresume method of some target fails, we are in a tricky situation. We can't return an error because dm_internal_resume isn't supposed to return errors. We can't return success, because then the "resume" and "postsuspend" methods would not be paired correctly. So, we set the DMF_SUSPENDED flag and we fake normal suspend - it may confuse userspace tools, but it won't cause a kernel crash. ------------[ cut here ]------------ kernel BUG at lib/list_debug.c:56! invalid opcode: 0000 [#1] PREEMPT SMP CPU: 1 PID: 8343 Comm: dmsetup Not tainted 6.8.0-rc6 #4 Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.14.0-2 04/01/= 2014 RIP: 0010:__list_del_entry_valid_or_report+0x77/0xc0 RSP: 0018:ffff8881b831bcc0 EFLAGS: 00010282 RAX: 000000000000004e RBX: ffff888143b6eb80 RCX: 0000000000000000 RDX: 0000000000000001 RSI: ffffffff819053d0 RDI: 00000000ffffffff RBP: ffff8881b83a3400 R08: 00000000fffeffff R09: 0000000000000058 R10: 0000000000000000 R11: ffffffff81a24080 R12: 0000000000000001 R13: ffff88814538e000 R14: ffff888143bc6dc0 R15: ffffffffa02e4bb0 FS: 00000000f7c0f780(0000) GS:ffff8893f0a40000(0000) knlGS:0000000000000000 CS: 0010 DS: 002b ES: 002b CR0: 0000000080050033 CR2: 0000000057fb5000 CR3: 0000000143474000 CR4: 00000000000006b0 Call Trace: ? die+0x2d/0x80 ? do_trap+0xeb/0xf0 ? __list_del_entry_valid_or_report+0x77/0xc0 ? do_error_trap+0x60/0x80 ? __list_del_entry_valid_or_report+0x77/0xc0 ? exc_invalid_op+0x49/0x60 ? __list_del_entry_valid_or_report+0x77/0xc0 ? asm_exc_invalid_op+0x16/0x20 ? table_deps+0x1b0/0x1b0 [dm_mod] ? __list_del_entry_valid_or_report+0x77/0xc0 origin_postsuspend+0x1a/0x50 [dm_snapshot] dm_table_postsuspend_targets+0x34/0x50 [dm_mod] dm_suspend+0xd8/0xf0 [dm_mod] dev_suspend+0x1f2/0x2f0 [dm_mod] ? table_deps+0x1b0/0x1b0 [dm_mod] ctl_ioctl+0x300/0x5f0 [dm_mod] dm_compat_ctl_ioctl+0x7/0x10 [dm_mod] __x64_compat_sys_ioctl+0x104/0x170 do_syscall_64+0x184/0x1b0 entry_SYSCALL_64_after_hwframe+0x46/0x4e RIP: 0033:0xf7e6aead ---[ end trace 0000000000000000 ]--- Fixes: ffcc39364160 ("dm: enhance internal suspend and resume interface") Signed-off-by: Mikulas Patocka Signed-off-by: Mike Snitzer Signed-off-by: Sasha Levin --- drivers/md/dm.c | 26 ++++++++++++++++++++------ 1 file changed, 20 insertions(+), 6 deletions(-) diff --git a/drivers/md/dm.c b/drivers/md/dm.c index 771167ee552cd..a7724ba45b437 100644 --- a/drivers/md/dm.c +++ b/drivers/md/dm.c @@ -2809,6 +2809,9 @@ static void __dm_internal_suspend(struct mapped_devic= e *md, unsigned suspend_fla =20 static void __dm_internal_resume(struct mapped_device *md) { + int r; + struct dm_table *map; + BUG_ON(!md->internal_suspend_count); =20 if (--md->internal_suspend_count) @@ -2817,12 +2820,23 @@ static void __dm_internal_resume(struct mapped_devi= ce *md) if (dm_suspended_md(md)) goto done; /* resume from nested suspend */ =20 - /* - * NOTE: existing callers don't need to call dm_table_resume_targets - * (which may fail -- so best to avoid it for now by passing NULL map) - */ - (void) __dm_resume(md, NULL); - + map =3D rcu_dereference_protected(md->map, lockdep_is_held(&md->suspend_l= ock)); + r =3D __dm_resume(md, map); + if (r) { + /* + * If a preresume method of some target failed, we are in a + * tricky situation. We can't return an error to the caller. We + * can't fake success because then the "resume" and + * "postsuspend" methods would not be paired correctly, and it + * would break various targets, for example it would cause list + * corruption in the "origin" target. + * + * So, we fake normal suspend here, to make sure that the + * "resume" and "postsuspend" methods will be paired correctly. + */ + DMERR("Preresume method failed: %d", r); + set_bit(DMF_SUSPENDED, &md->flags); + } done: clear_bit(DMF_SUSPENDED_INTERNALLY, &md->flags); smp_mb__after_atomic(); --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 2C6CE28BD4F; Sun, 24 Mar 2024 23:48:05 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324086; cv=none; b=KBJAyQrWD2OxZPjROYgjIR/9P1HPp564Vd1xlfJ00g9kuhlKqsxIUDm+GnhOKze4T/5Hww/u98ugBoQX+tzQnchiaLu5MhZ4DvUkLIYGGDdiz1MHxqbAvU5fsij0n4KGE1AjQjUTphikam4TOoeMgNGvK53WXL/ZeGwB0Tcx+i8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324086; c=relaxed/simple; bh=zNqYkFbK0N7IoaO0IVeQN2MXCj+9gzGdySn+dJqPGDc=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=GpSanH0xEO88rLU39Xo+1abYuXgcToSudfeJSyKPnpVRvgxq5jGXbNSlYbNkm0ia/Q6XExJ0R5YqIAh4Ifzr1dDuAJOot7ED7JJ1NtP49n1mXTJ2mRe6hntfedfUsxLq2i5157hum4EK3JuuzupYWN8PoZnz48uYsh00nQaSMqI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=Vw0WXLQn; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="Vw0WXLQn" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 6E773C433A6; Sun, 24 Mar 2024 23:48:04 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324085; bh=zNqYkFbK0N7IoaO0IVeQN2MXCj+9gzGdySn+dJqPGDc=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Vw0WXLQnWGqeKsCTHrJIHtGpBEAF99D+DDoYWcNtiKJJS2gvePy6ONsfiK7Ta+w2l t3TF91la7+G9wE8Th/9vYNm22g5oJ1BZx4rBUXNzEUBNSkxmVyvMZspfybws9rxzTZ o+vaw95A6NHMSLZ8uqP2MLScuZ3CTfIjoqBdoDScVngNYjKpD+FLGZ8C1dMX3Lj8xL O1MU3PE8FQvBxir92YnV+OwK89nwo3uakS2SzB4uDUrm1VfPdzV9ul0sVb2yk4+m5d hVezrhgzON1Os24sBruyQceNDYz/hlOgySn56bSjR7/m/7Tu6RKxVVvenKowM/tlc3 UHxfhicmmtWWw== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Chen Ni , Thierry Reding , Sasha Levin Subject: [PATCH 5.4 085/183] drm/tegra: dsi: Add missing check for of_find_device_by_node Date: Sun, 24 Mar 2024 19:44:58 -0400 Message-ID: <20240324234638.1355609-86-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Chen Ni [ Upstream commit afe6fcb9775882230cd29b529203eabd5d2a638d ] Add check for the return value of of_find_device_by_node() and return the error if it fails in order to avoid NULL pointer dereference. Fixes: e94236cde4d5 ("drm/tegra: dsi: Add ganged mode support") Signed-off-by: Chen Ni Signed-off-by: Thierry Reding Link: https://patchwork.freedesktop.org/patch/msgid/20231024080738.825553-1= -nichen@iscas.ac.cn Signed-off-by: Sasha Levin --- drivers/gpu/drm/tegra/dsi.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/tegra/dsi.c b/drivers/gpu/drm/tegra/dsi.c index 13413d2b26028..4e454479ff157 100644 --- a/drivers/gpu/drm/tegra/dsi.c +++ b/drivers/gpu/drm/tegra/dsi.c @@ -1451,9 +1451,11 @@ static int tegra_dsi_ganged_probe(struct tegra_dsi *= dsi) np =3D of_parse_phandle(dsi->dev->of_node, "nvidia,ganged-mode", 0); if (np) { struct platform_device *gangster =3D of_find_device_by_node(np); + of_node_put(np); + if (!gangster) + return -EPROBE_DEFER; =20 dsi->slave =3D platform_get_drvdata(gangster); - of_node_put(np); =20 if (!dsi->slave) { put_device(&gangster->dev); --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id A268128BD52; Sun, 24 Mar 2024 23:48:06 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324086; cv=none; b=K5MvRAJZ7ocIL5d8DhVHyezuAcXorPZ4K1YvYWWwEQ5cTtrOu3bwsxdcw13rGN0PvfjP+Fg8rP25QYr85oGYZSl+kmnq1gYLFDCqK+Zq/yu6cNjKdO1gyKycj1iMyCBlsTXVlqkCp87Cd4Eid4CKz6XMLhSq2MnkFssS8To1ORY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324086; c=relaxed/simple; bh=W2auDHnhzdN2Q152if/0LfzHE3Jc54mGrChBtG4p+mE=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=sAojt5GHUXPbkSOCz92eDUrL9yb1qwoCF8Pjg9qJS6txOC4FZEzrvLeGNGP0CIneZUpLo5ZoJ0Zg7VHaEg5m0g17hld2TcJGHe7W9n3VcngF6N+NJktVZ0UwNyF6+NoF05DcN0OOBWpK0cc9aMUucp8BaN1YFIdoNHZPMwzzlSg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=Hh02hAWi; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="Hh02hAWi" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 51E11C433C7; Sun, 24 Mar 2024 23:48:05 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324086; bh=W2auDHnhzdN2Q152if/0LfzHE3Jc54mGrChBtG4p+mE=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Hh02hAWiiMfZTGjcTOVx9IlFXJ83NL8sYqknp+JSxwe+8ecIVlqn/RnobNsf+EpIF pE9TjqD+2ihnVBtud0gg4BQHzNPpl3tQYHclKb+mhIhwFsnh4osMN85FTig8d7oNqD GgTX1cSrq8Mj0aIJ5RCpMoSf6jCL+ofvI7YMtDEtLLNsgukh6jA4uJuvFrkLeuiIES iUTzF4mG6+/Iyr019Bc6SS/hFCsXVBxxA+kEF5X5tNJgdO89+eSdIe71XixN80xje2 PS65yQO+E2lA9yvuANx8atNJWH5Kuc9283Dafv9nZDJWV3R/TWS8FvApMSLkZKjZvh NHJmrdD+wNbXA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Sowjanya Komatineni , Thierry Reding , Sasha Levin Subject: [PATCH 5.4 086/183] gpu: host1x: mipi: Update tegra_mipi_request() to be node based Date: Sun, 24 Mar 2024 19:44:59 -0400 Message-ID: <20240324234638.1355609-87-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Sowjanya Komatineni [ Upstream commit 767598d447aa46411289c5808b0e45e20a1823b4 ] Tegra CSI driver need a separate MIPI device for each channel as calibration of corresponding MIPI pads for each channel should happen independently. So, this patch updates tegra_mipi_request() API to add a device_node pointer argument to allow creating mipi device for specific device node rather than a device. Signed-off-by: Sowjanya Komatineni Signed-off-by: Thierry Reding Stable-dep-of: 830c1ded3563 ("drm/tegra: dsi: Fix some error handling paths= in tegra_dsi_probe()") Signed-off-by: Sasha Levin --- drivers/gpu/drm/tegra/dsi.c | 2 +- drivers/gpu/host1x/mipi.c | 4 ++-- include/linux/host1x.h | 3 ++- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/drivers/gpu/drm/tegra/dsi.c b/drivers/gpu/drm/tegra/dsi.c index 4e454479ff157..1cc6dc6167771 100644 --- a/drivers/gpu/drm/tegra/dsi.c +++ b/drivers/gpu/drm/tegra/dsi.c @@ -1542,7 +1542,7 @@ static int tegra_dsi_probe(struct platform_device *pd= ev) if (IS_ERR(dsi->regs)) return PTR_ERR(dsi->regs); =20 - dsi->mipi =3D tegra_mipi_request(&pdev->dev); + dsi->mipi =3D tegra_mipi_request(&pdev->dev, pdev->dev.of_node); if (IS_ERR(dsi->mipi)) return PTR_ERR(dsi->mipi); =20 diff --git a/drivers/gpu/host1x/mipi.c b/drivers/gpu/host1x/mipi.c index e00809d996a29..762d349ad00f1 100644 --- a/drivers/gpu/host1x/mipi.c +++ b/drivers/gpu/host1x/mipi.c @@ -206,9 +206,9 @@ static int tegra_mipi_power_down(struct tegra_mipi *mip= i) return 0; } =20 -struct tegra_mipi_device *tegra_mipi_request(struct device *device) +struct tegra_mipi_device *tegra_mipi_request(struct device *device, + struct device_node *np) { - struct device_node *np =3D device->of_node; struct tegra_mipi_device *dev; struct of_phandle_args args; int err; diff --git a/include/linux/host1x.h b/include/linux/host1x.h index e6eea45e11549..0b9d59807e5e2 100644 --- a/include/linux/host1x.h +++ b/include/linux/host1x.h @@ -314,7 +314,8 @@ int host1x_client_unregister(struct host1x_client *clie= nt); =20 struct tegra_mipi_device; =20 -struct tegra_mipi_device *tegra_mipi_request(struct device *device); +struct tegra_mipi_device *tegra_mipi_request(struct device *device, + struct device_node *np); void tegra_mipi_free(struct tegra_mipi_device *device); int tegra_mipi_enable(struct tegra_mipi_device *device); int tegra_mipi_disable(struct tegra_mipi_device *device); --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9106E157A6E; Sun, 24 Mar 2024 23:48:07 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324088; cv=none; b=fdAwFSlUT2Bi3DQu/IwBLjOC6F+/GdxMD1eWCdiw2EYKwT3QagN/UXauwQXwbHyCj7Wp4zw+ORRT8oVGi/+L0tc2iI/+r2izTGSR7hOn6dbOURXsLLr1NsRVlxHWmiLYKjWdAwj1+HkjDo+FOyVbHiVAFuCC5MU5BedZ/iPY+14= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324088; c=relaxed/simple; bh=R04SaLVTlRY434WAUbzoNoGBvTez5cp8uVBh57bcJec=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=EB/YmZ1NHPghH0nvbQNd3p79nN0hAvryKi+BTEWgf3iVN+JnOP/NBsRP1f3auhZTmzCQQvgkhlZFKPXteQoHlt4F0N/02hxsL9IxlnIo9ZFKf9drIm/1MN/xBxyIlAGISOuj+2dEKBmcZeXX0B+D2b4+7W4/bIwN9O1ZRQ6yHUI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=oqY4N6Gd; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="oqY4N6Gd" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 7F561C43390; Sun, 24 Mar 2024 23:48:06 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324087; bh=R04SaLVTlRY434WAUbzoNoGBvTez5cp8uVBh57bcJec=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=oqY4N6GdIHQlTWT/UAFqYLVZcrY3Rsl5DL2acJwTmDi05ZIaXclnRpOdG5StxZtC2 9Sy5nzDRv3xmItoU5rhtH5WPqpGaIcwnQqdMvNGDR/RMwPqerJgipfRWGtzW9Pdtde nDwZrF7FqlKoBR8G2Bwnt2UyPG0QT/YwJxQrsW3hxIStdMXIRXBCJPlYJsaYZ9/uFn S5z1LDfEAGAQn8eCbe09AbcM1Iqux9VO8TRohAxVrrr4SFUTfoYHDjZtO8qOgb7ugH TpeN4CguUlrp9cZPeBrtSGdUdMOHvUMAWZ64w4aK4+QI+8G2a2sC0fY4xDjU5JRovA xd43Yth7Q7Wpg== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Cai Huoqing , Thierry Reding , Sasha Levin Subject: [PATCH 5.4 087/183] drm/tegra: dsi: Make use of the helper function dev_err_probe() Date: Sun, 24 Mar 2024 19:45:00 -0400 Message-ID: <20240324234638.1355609-88-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Cai Huoqing [ Upstream commit fc75e4fcbd1e4252a0481ebb23cd4516c127a8e2 ] When possible use dev_err_probe help to properly deal with the PROBE_DEFER error, the benefit is that DEFER issue will be logged in the devices_deferred debugfs file. And using dev_err_probe() can reduce code size, the error value gets printed. Signed-off-by: Cai Huoqing Signed-off-by: Thierry Reding Stable-dep-of: 830c1ded3563 ("drm/tegra: dsi: Fix some error handling paths= in tegra_dsi_probe()") Signed-off-by: Sasha Levin --- drivers/gpu/drm/tegra/dsi.c | 28 ++++++++++++---------------- 1 file changed, 12 insertions(+), 16 deletions(-) diff --git a/drivers/gpu/drm/tegra/dsi.c b/drivers/gpu/drm/tegra/dsi.c index 1cc6dc6167771..cc0ac038a4208 100644 --- a/drivers/gpu/drm/tegra/dsi.c +++ b/drivers/gpu/drm/tegra/dsi.c @@ -1508,28 +1508,24 @@ static int tegra_dsi_probe(struct platform_device *= pdev) } =20 dsi->clk =3D devm_clk_get(&pdev->dev, NULL); - if (IS_ERR(dsi->clk)) { - dev_err(&pdev->dev, "cannot get DSI clock\n"); - return PTR_ERR(dsi->clk); - } + if (IS_ERR(dsi->clk)) + return dev_err_probe(&pdev->dev, PTR_ERR(dsi->clk), + "cannot get DSI clock\n"); =20 dsi->clk_lp =3D devm_clk_get(&pdev->dev, "lp"); - if (IS_ERR(dsi->clk_lp)) { - dev_err(&pdev->dev, "cannot get low-power clock\n"); - return PTR_ERR(dsi->clk_lp); - } + if (IS_ERR(dsi->clk_lp)) + return dev_err_probe(&pdev->dev, PTR_ERR(dsi->clk_lp), + "cannot get low-power clock\n"); =20 dsi->clk_parent =3D devm_clk_get(&pdev->dev, "parent"); - if (IS_ERR(dsi->clk_parent)) { - dev_err(&pdev->dev, "cannot get parent clock\n"); - return PTR_ERR(dsi->clk_parent); - } + if (IS_ERR(dsi->clk_parent)) + return dev_err_probe(&pdev->dev, PTR_ERR(dsi->clk_parent), + "cannot get parent clock\n"); =20 dsi->vdd =3D devm_regulator_get(&pdev->dev, "avdd-dsi-csi"); - if (IS_ERR(dsi->vdd)) { - dev_err(&pdev->dev, "cannot get VDD supply\n"); - return PTR_ERR(dsi->vdd); - } + if (IS_ERR(dsi->vdd)) + return dev_err_probe(&pdev->dev, PTR_ERR(dsi->vdd), + "cannot get VDD supply\n"); =20 err =3D tegra_dsi_setup_clocks(dsi); if (err < 0) { --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 6973118146C; Sun, 24 Mar 2024 23:48:08 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324089; cv=none; b=D2poXIqBHdv2Hg7m6pz8eVPWYDbsdS+79DGpMvWb9gJpSekewe4/YzPZ21Z32UAU9DZPb2MZQJikMEd88hGAuVHwbCto9FtKLpChb0KN2E8YnkFTdg51GBOJpa/+vacwhtma9p/AZaHldyvfZT6ufpG9myC4wzAZ3FPhdik91xA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324089; c=relaxed/simple; bh=2i2AE3TKtLJjG+eFA0S3iT2awKSaOSooeRl2a3FPNWE=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=Nl/watcMijnLo7hX2GR8QjVmNks0vddcaETaZKXJ45//fe70AS4HRd5E3a11xH/29uKcruAJrsPhH/EPulC5aSjZa+IDTq8QhC44gB5LztI69dnElfRMj81Cpr9jltZO4OTvBwGgeMkcUi7+pw7hx8PbejWJYvH8mJGo9CRz6FQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=PwDgYHCa; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="PwDgYHCa" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 618BFC433C7; Sun, 24 Mar 2024 23:48:07 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324088; bh=2i2AE3TKtLJjG+eFA0S3iT2awKSaOSooeRl2a3FPNWE=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=PwDgYHCa3xv1MSg/XyYhaZWKK1zN2hYjZeVw1PNrf3ZRwzHHvP0CcWTkvTl6rGqGt v+s1tIkLl2d42oWnDv4SbY9N57ezj8OROxUsFsolXBDci5rxLyy3s63g3NZqyYYiMY muWvcCUuq9kMx0cIA5Gak03BLQpu5qcR4U5TQlhMkLchsOhWtbjiAMadf4tCGNpDfR VvidMjwDR4tOoJbq2x4Grgs8wGxJXB1Pd5UlEv/WiTI0C4V1gRHy1U4rMvGbmdfISi azzq8VcpRGM5bkJrch+vz8AH/dgOzw/C9Fqe1VA92dr18iMFsv2Aymr55K04G8tjtS sxaHChzpEOeMA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Christophe JAILLET , Thierry Reding , Sasha Levin Subject: [PATCH 5.4 088/183] drm/tegra: dsi: Fix some error handling paths in tegra_dsi_probe() Date: Sun, 24 Mar 2024 19:45:01 -0400 Message-ID: <20240324234638.1355609-89-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Christophe JAILLET [ Upstream commit 830c1ded356369cd1303e8bb87ce3fea6e744de8 ] If an error occurs after calling tegra_output_probe(), tegra_output_remove() should be called as already done in the remove function. Fixes: dec727399a4b ("drm/tegra: Add DSI support") Signed-off-by: Christophe JAILLET Signed-off-by: Thierry Reding Link: https://patchwork.freedesktop.org/patch/msgid/16820073278d031f6c474a0= 8d5f22a255158585e.1693667005.git.christophe.jaillet@wanadoo.fr Signed-off-by: Sasha Levin --- drivers/gpu/drm/tegra/dsi.c | 54 ++++++++++++++++++++++++------------- 1 file changed, 35 insertions(+), 19 deletions(-) diff --git a/drivers/gpu/drm/tegra/dsi.c b/drivers/gpu/drm/tegra/dsi.c index cc0ac038a4208..072a4c1d8eff4 100644 --- a/drivers/gpu/drm/tegra/dsi.c +++ b/drivers/gpu/drm/tegra/dsi.c @@ -1503,44 +1503,58 @@ static int tegra_dsi_probe(struct platform_device *= pdev) =20 if (!pdev->dev.pm_domain) { dsi->rst =3D devm_reset_control_get(&pdev->dev, "dsi"); - if (IS_ERR(dsi->rst)) - return PTR_ERR(dsi->rst); + if (IS_ERR(dsi->rst)) { + err =3D PTR_ERR(dsi->rst); + goto remove; + } } =20 dsi->clk =3D devm_clk_get(&pdev->dev, NULL); - if (IS_ERR(dsi->clk)) - return dev_err_probe(&pdev->dev, PTR_ERR(dsi->clk), - "cannot get DSI clock\n"); + if (IS_ERR(dsi->clk)) { + err =3D dev_err_probe(&pdev->dev, PTR_ERR(dsi->clk), + "cannot get DSI clock\n"); + goto remove; + } =20 dsi->clk_lp =3D devm_clk_get(&pdev->dev, "lp"); - if (IS_ERR(dsi->clk_lp)) - return dev_err_probe(&pdev->dev, PTR_ERR(dsi->clk_lp), - "cannot get low-power clock\n"); + if (IS_ERR(dsi->clk_lp)) { + err =3D dev_err_probe(&pdev->dev, PTR_ERR(dsi->clk_lp), + "cannot get low-power clock\n"); + goto remove; + } =20 dsi->clk_parent =3D devm_clk_get(&pdev->dev, "parent"); - if (IS_ERR(dsi->clk_parent)) - return dev_err_probe(&pdev->dev, PTR_ERR(dsi->clk_parent), - "cannot get parent clock\n"); + if (IS_ERR(dsi->clk_parent)) { + err =3D dev_err_probe(&pdev->dev, PTR_ERR(dsi->clk_parent), + "cannot get parent clock\n"); + goto remove; + } =20 dsi->vdd =3D devm_regulator_get(&pdev->dev, "avdd-dsi-csi"); - if (IS_ERR(dsi->vdd)) - return dev_err_probe(&pdev->dev, PTR_ERR(dsi->vdd), - "cannot get VDD supply\n"); + if (IS_ERR(dsi->vdd)) { + err =3D dev_err_probe(&pdev->dev, PTR_ERR(dsi->vdd), + "cannot get VDD supply\n"); + goto remove; + } =20 err =3D tegra_dsi_setup_clocks(dsi); if (err < 0) { dev_err(&pdev->dev, "cannot setup clocks\n"); - return err; + goto remove; } =20 regs =3D platform_get_resource(pdev, IORESOURCE_MEM, 0); dsi->regs =3D devm_ioremap_resource(&pdev->dev, regs); - if (IS_ERR(dsi->regs)) - return PTR_ERR(dsi->regs); + if (IS_ERR(dsi->regs)) { + err =3D PTR_ERR(dsi->regs); + goto remove; + } =20 dsi->mipi =3D tegra_mipi_request(&pdev->dev, pdev->dev.of_node); - if (IS_ERR(dsi->mipi)) - return PTR_ERR(dsi->mipi); + if (IS_ERR(dsi->mipi)) { + err =3D PTR_ERR(dsi->mipi); + goto remove; + } =20 dsi->host.ops =3D &tegra_dsi_host_ops; dsi->host.dev =3D &pdev->dev; @@ -1571,6 +1585,8 @@ static int tegra_dsi_probe(struct platform_device *pd= ev) mipi_dsi_host_unregister(&dsi->host); mipi_free: tegra_mipi_free(dsi->mipi); +remove: + tegra_output_remove(&dsi->output); return err; } =20 --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 54B29181470; Sun, 24 Mar 2024 23:48:09 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324090; cv=none; b=QJ/Sg7WpARbc828R0xJUMwaourH+3gkOAuvpX1MLLpdLAmbjBsX4M1JcFT4bg5047HTcdmSbZ5fuopCQYhyCpOsLDFIqxYIxYrG6rWKZBxrKf8c9QCObuJoPayT38vFrPBGxw5oKHYH/0357pb0ccNAsLd7pM7uo+VvsBQwq19Q= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324090; c=relaxed/simple; bh=+X/wB7FFU9/O/mKVEwyniykC9TrsoAe0oE0bRh21QVk=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=swL87xcf+/N8X/Ba2OVcrGGtn37uPOSjtF7u5qlhL17689hFzMQyZ6eZnEjcHnwB6o0eFF5EB16I8HcGn5Ktx7AXMU7ZHK3B+lW8EiIrGqUwf8BbfvWUXz5PfoWtetQR1O9kr5UF8IrfBK/bRPUJa7ri7ZW9o91Ob9kwjx5lKv8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=Gpa/sAv2; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="Gpa/sAv2" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 4951DC43394; Sun, 24 Mar 2024 23:48:08 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324088; bh=+X/wB7FFU9/O/mKVEwyniykC9TrsoAe0oE0bRh21QVk=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Gpa/sAv2sDuHDUIvUeCAAp+FYCp0oUlelaCUhVHftQHTuvLhFDEI/kcHulwMKXCcb 203luG0oHxXOlCnXDl8wKFZE6pjZyZaHqZuPa3Psssw8QwEnq+DEa9CI27hV5wlMlC IeIYLLiK+SV9G6b0jVxGxU58Vb/67a2ugPmGRHqYhmWKf/VFhab5JvfrnKX74iOMu0 dqYXTy/DX8qDFNk+y4J9F/uW9y01GQZ0D3ixlJrahyjYvq8RU//HGpkcQYM1VOUKax AJHwZu94cHPuxoQmNge51/xYGQJq9ne8HRt1cv3tiQyMbAYxG4cGDpg3pid6Alucci DHEso72jDFNNA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Christophe JAILLET , Thierry Reding , Sasha Levin Subject: [PATCH 5.4 089/183] drm/tegra: dsi: Fix missing pm_runtime_disable() in the error handling path of tegra_dsi_probe() Date: Sun, 24 Mar 2024 19:45:02 -0400 Message-ID: <20240324234638.1355609-90-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Christophe JAILLET [ Upstream commit 5286a9fc280c45b6b307ee1b07f7a997e042252c ] If an error occurs after calling pm_runtime_enable(), pm_runtime_disable() should be called as already done in the remove function. Fixes: ef8187d75265 ("drm/tegra: dsi: Implement runtime PM") Signed-off-by: Christophe JAILLET Signed-off-by: Thierry Reding Link: https://patchwork.freedesktop.org/patch/msgid/ee4a15c9cd4b574a55cd67c= 30d2411239ba2cee9.1693667005.git.christophe.jaillet@wanadoo.fr Signed-off-by: Sasha Levin --- drivers/gpu/drm/tegra/dsi.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/gpu/drm/tegra/dsi.c b/drivers/gpu/drm/tegra/dsi.c index 072a4c1d8eff4..03ccfb6ce8a89 100644 --- a/drivers/gpu/drm/tegra/dsi.c +++ b/drivers/gpu/drm/tegra/dsi.c @@ -1582,6 +1582,7 @@ static int tegra_dsi_probe(struct platform_device *pd= ev) return 0; =20 unregister: + pm_runtime_disable(&pdev->dev); mipi_dsi_host_unregister(&dsi->host); mipi_free: tegra_mipi_free(dsi->mipi); --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 4820B181806; Sun, 24 Mar 2024 23:48:09 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324091; cv=none; b=c5J7Q1z5hoWkyz+hwq6SmRBaLziBXVC5v3fxbP8Zmn5cA6JgV0gcjx+9EbPJxY2Ky0w5DefvkJ3KHuRiMa7EEbHy0D2JbJydKoHKOL/bPrDsLFtVa0SHyO5sMqFZN/UvJ8RlOe1xu9hrYkTRiYZKV9cPBlKCB/qlOvOxAuxFa6c= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324091; c=relaxed/simple; bh=fQ4pDnoEGS24uK7PN4tSU8hDTyazw65f8yIfQ9B9TyQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=fMXPNAWj5U/ydpFBzlk+M16ZpFZKFyIvsQXxisMcuzrbcMZJGHrh+d6DsPXah5JmoeToIxhd3vHJ9r3zAJgnc8gFKDhvDIgfYV934mI8gnatRzaSuQZ4CX2m5txwp3Jlj8Qm8dhsjmSj4Nq6lb2wyiso+X/sd58DWv3bO4aoSRk= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=Oc34BKFn; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="Oc34BKFn" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 29729C433F1; Sun, 24 Mar 2024 23:48:09 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324089; bh=fQ4pDnoEGS24uK7PN4tSU8hDTyazw65f8yIfQ9B9TyQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Oc34BKFnSNHz0Rmm0Bte+KA3S6ZXU9VzpXtpupiJFCgyLX6hwe72Mk0MYyU4r2Pdv O78z0zvfvFZeFqltF70VEtf6i5F9wUtjezTsqHtxx2+5QyygjGt5I4gTjEUxLySSdf mTYPTV4S60CB4No8Flq1vxZ+Vo7VfGJIAJDh2o/gGXaDc/s7kx+IXwbbkoC6jtXVJ0 8McHQKLSB3914naaVwFKrNLpfd9+1QPmdGBuXDUBQloEfLDgm4QucRnQoWHhLdBMA8 xlK2Yr3c1Ysd1IMZ452Nm4ZO5Y38AUnigEuVcwVzUQ99v7SlVcIDoVToEVZkI8bIja gGj5ndD9gU63w== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Christophe JAILLET , Thierry Reding , Sasha Levin Subject: [PATCH 5.4 090/183] drm/tegra: output: Fix missing i2c_put_adapter() in the error handling paths of tegra_output_probe() Date: Sun, 24 Mar 2024 19:45:03 -0400 Message-ID: <20240324234638.1355609-91-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Christophe JAILLET [ Upstream commit 2db4578ef6ffb2b52115ca0ebf897b60ec559556 ] If an error occurs after a successful of_get_i2c_adapter_by_node() call, it should be undone by a corresponding i2c_put_adapter(). Add the missing i2c_put_adapter() call. Fixes: 9be7d864cf07 ("drm/tegra: Implement panel support") Signed-off-by: Christophe JAILLET Signed-off-by: Thierry Reding Link: https://patchwork.freedesktop.org/patch/msgid/b38604178991e1f08b2cda2= 19103be266be2d680.1693667005.git.christophe.jaillet@wanadoo.fr Signed-off-by: Sasha Levin --- drivers/gpu/drm/tegra/output.c | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/drivers/gpu/drm/tegra/output.c b/drivers/gpu/drm/tegra/output.c index bdcaa4c7168cf..806249c0b7e85 100644 --- a/drivers/gpu/drm/tegra/output.c +++ b/drivers/gpu/drm/tegra/output.c @@ -127,8 +127,10 @@ int tegra_output_probe(struct tegra_output *output) GPIOD_IN, "HDMI hotplug detect"); if (IS_ERR(output->hpd_gpio)) { - if (PTR_ERR(output->hpd_gpio) !=3D -ENOENT) - return PTR_ERR(output->hpd_gpio); + if (PTR_ERR(output->hpd_gpio) !=3D -ENOENT) { + err =3D PTR_ERR(output->hpd_gpio); + goto put_i2c; + } =20 output->hpd_gpio =3D NULL; } @@ -137,7 +139,7 @@ int tegra_output_probe(struct tegra_output *output) err =3D gpiod_to_irq(output->hpd_gpio); if (err < 0) { dev_err(output->dev, "gpiod_to_irq(): %d\n", err); - return err; + goto put_i2c; } =20 output->hpd_irq =3D err; @@ -150,7 +152,7 @@ int tegra_output_probe(struct tegra_output *output) if (err < 0) { dev_err(output->dev, "failed to request IRQ#%u: %d\n", output->hpd_irq, err); - return err; + goto put_i2c; } =20 output->connector.polled =3D DRM_CONNECTOR_POLL_HPD; @@ -168,6 +170,12 @@ int tegra_output_probe(struct tegra_output *output) return -ENOMEM; =20 return 0; + +put_i2c: + if (output->ddc) + i2c_put_adapter(output->ddc); + + return err; } =20 void tegra_output_remove(struct tegra_output *output) --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id D617E18180F; Sun, 24 Mar 2024 23:48:10 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324091; cv=none; b=MDGvjX/MzfJ4bT0GxcraZ55wUQ5kmpmhWlbYGDH5+uGfQCX2ueyvp62aIWklmFmmiwE+PCF9pGq8MiKWyux1iuG8voglzHys+UVyRngl4EklcXgao8W27CRi+Rk4L9scZjNDHZOWaZY9cTC4XL1XOD980UmyFN5mFKkKZi0RVwo= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324091; c=relaxed/simple; bh=GMvWa03Qa7FSPRuDtAM5CuxjChNnwKQlEtknCNEXyko=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=tk2GFWFk3fIvfHKK4cArQArp+dbrTbIsvgjAoyo96qZdXBiZTEYzQf2+nx54eQtm9OyrW3QbwLwy0GW2FgSVI7PJ0KsuxAgpm82QnjUR0PBRPfZkjEdzDmMStHRHSl9PZdJGnFezjqXOxSUYdlPWA6JPFE6FKJSLvoC7EdIXpo4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=BFzzlmyl; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="BFzzlmyl" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 0D06FC433C7; Sun, 24 Mar 2024 23:48:09 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324090; bh=GMvWa03Qa7FSPRuDtAM5CuxjChNnwKQlEtknCNEXyko=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=BFzzlmylG7B8NxXmXHt5haHAc5w/h4TRI7Lbekarl431HUTdDqta+DCP6CcLZNDkW p3fwEqC8luPddf7XrsAJWHP0LSXJTXHtVRkbfUjzoUfrn7Qo6DZ6CzLzpr0C3LDBZX BApJO2Zz5YCk1t1oJZf4RVd/t4KNYirDondxcCBOhUA8j4sPrbU2vTaKEZqNjqDkK1 iDT3cme8gPck9wzVo2TyMJX01d6cOz94emke7hm48A9Mw+wr0Ln2rUQ+WzllHXBl5l JODUw9kwq/PtRWtdUjyuFUPR5JNr8rYbE8sw4stn9L4AT3734oAnwESAQHy779TWEs fnK8kI7kZ+I2Q== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Alex Bee , Zheng Yang , Heiko Stuebner , Sasha Levin Subject: [PATCH 5.4 091/183] drm/rockchip: inno_hdmi: Fix video timing Date: Sun, 24 Mar 2024 19:45:04 -0400 Message-ID: <20240324234638.1355609-92-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Alex Bee [ Upstream commit 47a145c03484d33e65d773169d5ca1b9fe2a492e ] The controller wants the difference between *total and *sync_start in the HDMI_VIDEO_EXT_*DELAY registers. Otherwise the signal is very unstable for certain non-VIC modes. See downstream commit [0]. [0] https://github.com/rockchip-linux/kernel/commit/8eb559f2502c Fixes: 412d4ae6b7a5 ("drm/rockchip: hdmi: add Innosilicon HDMI support") Co-developed-by: Zheng Yang Signed-off-by: Zheng Yang Signed-off-by: Alex Bee Signed-off-by: Heiko Stuebner Link: https://patchwork.freedesktop.org/patch/msgid/20231222174220.55249-4-= knaerzche@gmail.com Signed-off-by: Sasha Levin --- drivers/gpu/drm/rockchip/inno_hdmi.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/rockchip/inno_hdmi.c b/drivers/gpu/drm/rockchi= p/inno_hdmi.c index f2e2cc66f4897..95888e64bd8bc 100644 --- a/drivers/gpu/drm/rockchip/inno_hdmi.c +++ b/drivers/gpu/drm/rockchip/inno_hdmi.c @@ -401,7 +401,7 @@ static int inno_hdmi_config_video_timing(struct inno_hd= mi *hdmi, hdmi_writeb(hdmi, HDMI_VIDEO_EXT_HBLANK_L, value & 0xFF); hdmi_writeb(hdmi, HDMI_VIDEO_EXT_HBLANK_H, (value >> 8) & 0xFF); =20 - value =3D mode->hsync_start - mode->hdisplay; + value =3D mode->htotal - mode->hsync_start; hdmi_writeb(hdmi, HDMI_VIDEO_EXT_HDELAY_L, value & 0xFF); hdmi_writeb(hdmi, HDMI_VIDEO_EXT_HDELAY_H, (value >> 8) & 0xFF); =20 @@ -416,7 +416,7 @@ static int inno_hdmi_config_video_timing(struct inno_hd= mi *hdmi, value =3D mode->vtotal - mode->vdisplay; hdmi_writeb(hdmi, HDMI_VIDEO_EXT_VBLANK, value & 0xFF); =20 - value =3D mode->vsync_start - mode->vdisplay; + value =3D mode->vtotal - mode->vsync_start; hdmi_writeb(hdmi, HDMI_VIDEO_EXT_VDELAY, value & 0xFF); =20 value =3D mode->vsync_end - mode->vsync_start; --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 40767181811; Sun, 24 Mar 2024 23:48:12 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324092; cv=none; b=tlB2CEtOhKbTzDbwJEbgozt1VZW4fiumPRKl6dmT+lAAscAf/TPSeE4qioZvzUwhGZfueArPlneBBkh8SVLTF8gtoKCc8YiPkLNXpcP8PJCqHroBPdJvDlvz1hzQG7LsKjhIJe9jRVoqVG8SrDBGabsFYsGAUK6eCT4cov28pSo= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324092; c=relaxed/simple; bh=gbU2EowSPlHE2x6WXeXSsOfbfUQE1IU/R3YYLu6N2co=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=Kt4e7WDyak0Le/LgmDS3dnG/3Vp/Z+tksAwqM+6loK9tWj75/r5RkqCx4sXSA5SsLvgb7SVfr/XXtNamQlwdttCvYRbtgLbIwZce1NSna+GU57goEmuP8gV+/cYWnvWPpGhCwPNz4P9pHcThkaofyiN0JiiZ1FoIAVoNBgeNgq8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=gHVU64IN; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="gHVU64IN" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 05BFEC43394; Sun, 24 Mar 2024 23:48:10 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324092; bh=gbU2EowSPlHE2x6WXeXSsOfbfUQE1IU/R3YYLu6N2co=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=gHVU64INu98LyPY9KAzFasqUatZEqQ70e4kY6XnDLDbIGkp85V6ziraUbTbfLLOdE VZIFFZMskGpPMQJsdn5v/ifYNE6hA8TmIgFRjINezP3X83L6UO2WhWbjFQUHhQlxry C4Ydm7dDAfhv2eSioM2rKOV0ifJxsL1u7nKZXha+gQHoQFsbx9ntcq47THXLBHwnuK U1myQGRJfmiPhPL2dAHtAn2nboqNrWPsTmTuhcjpz/dBFTvZ9Z7HtNifbkWnNh2Dzo 0CJOGX02V5fUh/xq9a5gpVdGSiWe+A2kx4lW1jsGUlWSOqiHFBSlaoTnI+Hn70mBmv gEJQBS28zd2sg== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Harry Wentland , Simon Ser , Melissa Wen , Melissa Wen , Sasha Levin Subject: [PATCH 5.4 092/183] drm: Don't treat 0 as -1 in drm_fixp2int_ceil Date: Sun, 24 Mar 2024 19:45:05 -0400 Message-ID: <20240324234638.1355609-93-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Harry Wentland [ Upstream commit cf8837d7204481026335461629b84ac7f4538fa5 ] Unit testing this in VKMS shows that passing 0 into this function returns -1, which is highly counter- intuitive. Fix it by checking whether the input is >=3D 0 instead of > 0. Fixes: 64566b5e767f ("drm: Add drm_fixp_from_fraction and drm_fixp2int_ceil= ") Signed-off-by: Harry Wentland Reviewed-by: Simon Ser Reviewed-by: Melissa Wen Signed-off-by: Melissa Wen Link: https://patchwork.freedesktop.org/patch/msgid/20231108163647.106853-2= -harry.wentland@amd.com Signed-off-by: Sasha Levin --- include/drm/drm_fixed.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/drm/drm_fixed.h b/include/drm/drm_fixed.h index 553210c02ee0f..627efa56e59fb 100644 --- a/include/drm/drm_fixed.h +++ b/include/drm/drm_fixed.h @@ -88,7 +88,7 @@ static inline int drm_fixp2int(s64 a) =20 static inline int drm_fixp2int_ceil(s64 a) { - if (a > 0) + if (a >=3D 0) return drm_fixp2int(a + DRM_FIXED_ALMOST_ONE); else return drm_fixp2int(a - DRM_FIXED_ALMOST_ONE); --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 3EC0F18180D; Sun, 24 Mar 2024 23:48:13 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324093; cv=none; b=WLXoDB76GETgX094qU5BRT1bsP5Uv1dJ1s+hAX3dJQCQuRGndvf9SzgN4wGe5XkfKth5TAKYChlUDdqF0viark8gENfHpDqnqS53/mWHHqnw4rjajoLJ3PuNEIYUSHdN7K4oQCxslQygYyCy94gVOYpJPGMfIz4YMM7acSedM7Y= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324093; c=relaxed/simple; bh=mUZJ4M1ThCoqEaA1I5K1dx6M2ULcYfgoaPkKU0j4/SI=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=Bl5lzCuYs47he2ur+MS9czNhbtUF1YoLCAadTAAJWhkSz4xK9XCImHuYq1taszf/Y7JTKIbn5Owh1O5vxqEyBQDtRgvnwKXMZghyKmApuCdfloIjcls6Bg0jIgMWtHPB7bCao/6rPVcRO+mGSXoSLnVoZ8kCyiXtzdg4UmmvD9w= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=kYisw6EJ; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="kYisw6EJ" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 655CFC433C7; Sun, 24 Mar 2024 23:48:12 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324093; bh=mUZJ4M1ThCoqEaA1I5K1dx6M2ULcYfgoaPkKU0j4/SI=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=kYisw6EJ34YyuabQL4F3XSkiIpjglgUp8E4sLkCVuI6EhFL2fULZO7FtpjC8m6UBK qj9Wj1awmZel1HkyRfd5sMZkGHcB3sWDYPexEoP4uUzHsha8xwdaZEuuo2Srehe3W0 n7Ou0VRPQwfGL+wxu2em/fbzNB4v/nIG0yZnE6QomwYsSKLmmq0phKmzABW7bJ7xDt M5eU3+iP2IPrlLFWtgEcuCt3/5V1LmdtcIFt6tlnX9NW/M7x0jopiANlDn1PmtBcr4 C8WpqlAmQXdKoaTTu4Ra0wfn1bItS0ZpBRWi+5l2fX2eK/7jMXxi48LiIR4HVEUtjW Yr830ksnlmiJg== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Quentin Schulz , Quentin Schulz , Heiko Stuebner , Sasha Levin Subject: [PATCH 5.4 093/183] drm/rockchip: lvds: do not overwrite error code Date: Sun, 24 Mar 2024 19:45:06 -0400 Message-ID: <20240324234638.1355609-94-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Quentin Schulz [ Upstream commit 79b09453c4e369ca81cfb670d0136d089e3b92f0 ] ret variable stores the return value of drm_of_find_panel_or_bridge which can return error codes different from EPROBE_DEFER. Therefore, let's just return that error code instead of forcing it to EPROBE_DEFER. Fixes: 34cc0aa25456 ("drm/rockchip: Add support for Rockchip Soc LVDS") Cc: Quentin Schulz Signed-off-by: Quentin Schulz Signed-off-by: Heiko Stuebner Link: https://patchwork.freedesktop.org/patch/msgid/20231120-rk-lvds-defer-= msg-v2-1-9c59a5779cf9@theobroma-systems.com Signed-off-by: Sasha Levin --- drivers/gpu/drm/rockchip/rockchip_lvds.c | 1 - 1 file changed, 1 deletion(-) diff --git a/drivers/gpu/drm/rockchip/rockchip_lvds.c b/drivers/gpu/drm/roc= kchip/rockchip_lvds.c index 64aefa8568963..aa8212c721b10 100644 --- a/drivers/gpu/drm/rockchip/rockchip_lvds.c +++ b/drivers/gpu/drm/rockchip/rockchip_lvds.c @@ -366,7 +366,6 @@ static int rockchip_lvds_bind(struct device *dev, struc= t device *master, goto err_put_port; } else if (ret) { DRM_DEV_ERROR(dev, "failed to find panel and bridge node\n"); - ret =3D -EPROBE_DEFER; goto err_put_port; } if (lvds->panel) --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id BF26A181824; Sun, 24 Mar 2024 23:48:14 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324094; cv=none; b=ljLJ87pWENiuihH6ZczNpVqY1TGVCtNaK92qsgjCeF08ooSEzKy5vF483koON4p8HQ6BiERPpaNbY3MgWKn8cd5dmVfuc5L0Ms2kZntV943MHZxzsh+EjNN0CPR3YWl8ZMPW70OTGy+j2bbTuQ+Wpb526g3rQxes+oU4a7Oul0A= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324094; c=relaxed/simple; bh=Q6KOVtDs6oNFjJoLfnzxl1u3QloDpMzBIFFk15tx8As=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=jyE0bIJO++6bhV9tluD8mSE2rMJdgDzwUYSeYgcFWMVa4DEVw2tqrpvnehTHmdneBCOR8IYVEylq8EHRphiSfPX123X0RcRG34SrYE2xHd+3rz5wfaQMJEhL40EHRT++xZ86gM1H8uFyRsWBDtGwfWPx35Zo78iyeclpOME5lGA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=EfK5t66P; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="EfK5t66P" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 62FBAC43394; Sun, 24 Mar 2024 23:48:13 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324094; bh=Q6KOVtDs6oNFjJoLfnzxl1u3QloDpMzBIFFk15tx8As=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=EfK5t66PmXiiHoN0Ee6uvDxQfxFACJ/IdqJK+jwr9XCVC931Z7FjRxDEpiL7bxbDY iP4pSGeeF1JFzF0ouwDqzHwg34OnFpQ6r1yvMrD0M7l47c49aBQpC3p0TWI+bb87a+ 2yjm1/blYlpRVSO5sFZDGrzDD7Fi748h2wHia618CqaajpcewWVHcqzy+/PksGoKIV F09n2S4s4RlY5Bs8lawiD7jvF01X+NFlBjuA7hmwCMgHyjh7U6GGs0BIUIkYSw+0Us /RqMJ2XWbP1y8TA5EMwpOWHA9yxWTT2mD8yolgEiaXAnLZ8CvZMCXAyUp3IrjEigZ8 UJTcfxU+9CTzg== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Peter Robinson , Jon Hunter , Thierry Reding , Sameer Pujar , Laxman Dewangan , Vinod Koul , Sasha Levin Subject: [PATCH 5.4 094/183] dmaengine: tegra210-adma: Update dependency to ARCH_TEGRA Date: Sun, 24 Mar 2024 19:45:07 -0400 Message-ID: <20240324234638.1355609-95-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Peter Robinson [ Upstream commit 33b7db45533af240fe44e809f9dc4d604cf82d07 ] Update the architecture dependency to be the generic Tegra because the driver works on the four latest Tegra generations not just T210, if you build a kernel with a specific ARCH_TEGRA_xxx_SOC option that excludes 210 you don't get this driver. Fixes: 433de642a76c9 ("dmaengine: tegra210-adma: add support for Tegra186/T= egra194") Signed-off-by: Peter Robinson Cc: Jon Hunter Cc: Thierry Reding Cc: Sameer Pujar Cc: Laxman Dewangan Reviewed-by: Jon Hunter Link: https://lore.kernel.org/r/20240112093310.329642-2-pbrobinson@gmail.com Signed-off-by: Vinod Koul Signed-off-by: Sasha Levin --- drivers/dma/Kconfig | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/drivers/dma/Kconfig b/drivers/dma/Kconfig index 66aad9dbd58c5..a7c156ce2c298 100644 --- a/drivers/dma/Kconfig +++ b/drivers/dma/Kconfig @@ -582,16 +582,16 @@ config TEGRA20_APB_DMA =20 config TEGRA210_ADMA tristate "NVIDIA Tegra210 ADMA support" - depends on (ARCH_TEGRA_210_SOC || COMPILE_TEST) + depends on (ARCH_TEGRA || COMPILE_TEST) select DMA_ENGINE select DMA_VIRTUAL_CHANNELS help - Support for the NVIDIA Tegra210 ADMA controller driver. The - DMA controller has multiple DMA channels and is used to service - various audio clients in the Tegra210 audio processing engine - (APE). This DMA controller transfers data from memory to - peripheral and vice versa. It does not support memory to - memory data transfer. + Support for the NVIDIA Tegra210/Tegra186/Tegra194/Tegra234 ADMA + controller driver. The DMA controller has multiple DMA channels + and is used to service various audio clients in the Tegra210 + audio processing engine (APE). This DMA controller transfers + data from memory to peripheral and vice versa. It does not + support memory to memory data transfer. =20 config TIMB_DMA tristate "Timberdale FPGA DMA support" --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id A6725181835; Sun, 24 Mar 2024 23:48:15 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324096; cv=none; b=BF18wFdOtRidV0GYeVHqL91eg50pAQs0vcNto56mG6zFSRmrR3ksuuSJYFifYPHXhYrK1MMnFugRBPWjmbFUa/tzjWrUzPCFO8gBl5nwg7+eUDt8+8aNYN60fXLZR2vHc5/Bwidy0EnYM4S4wzF8PDITlPpYiTUp+Bie0SiQdDU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324096; c=relaxed/simple; bh=ZVMI9u3hWeyYxvmD5YmP6NstIdy1DXLiyWbxUzkS5nw=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=tKOdSMjqKX4m2Lk+vLGNPGuzv0E6bVjD0LX1HLdT9dF59NudF0kCND2xvYIRTgaRpHe0RPIm6v0JlkjZPcMpUKjSJPnHTH5mqwO8VkjsjYTc0n+NiIYMvyBIG1XsggpeqCK9ppGbqW5vfxtcXjMglCzYU4rBWhPeify/8i34DbM= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=eTXTHELu; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="eTXTHELu" Received: by smtp.kernel.org (Postfix) with ESMTPSA id A0A2CC433F1; Sun, 24 Mar 2024 23:48:14 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324095; bh=ZVMI9u3hWeyYxvmD5YmP6NstIdy1DXLiyWbxUzkS5nw=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=eTXTHELuAwQ1rfQGfTDMH7VlTC6tJSKt2tljjrXFF7qF+bCABDMWu31KxmsfOSvDB wFEyOtG//diRUWHZJpE9hbBNL+pPVSrQUnhhSGIUv/pbr9Y5392EQXh+lVdxVgks3I MG1Benvg9po2KqmApUOKbsiF1tkrE7IsEdhj4agUoWr3YCe4XYPVz5Vf1RbUoU7q5j uJbwjdFO2n4HU0pxmssLRkoI0QJySQ3J9uaMNcTKsxpePBwazhCBzKf8m5oap9VptZ PP/e4dEkduvJkDq9LqNhV+ZcRleMhimED6stXlVTPQ3qnnEQ+ThsVRWOr87mKDwIVo surAVcDTwE8eA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Alexander Stein , Robert Foss , Sasha Levin Subject: [PATCH 5.4 095/183] media: tc358743: register v4l2 async device only after successful setup Date: Sun, 24 Mar 2024 19:45:08 -0400 Message-ID: <20240324234638.1355609-96-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Alexander Stein [ Upstream commit 87399f1ff92203d65f1febf5919429f4bb613a02 ] Ensure the device has been setup correctly before registering the v4l2 async device, thus allowing userspace to access. Signed-off-by: Alexander Stein Reviewed-by: Robert Foss Fixes: 4c5211a10039 ("[media] tc358743: register v4l2 asynchronous subdevic= e") Signed-off-by: Robert Foss Link: https://patchwork.freedesktop.org/patch/msgid/20240110090111.458115-1= -alexander.stein@ew.tq-group.com Signed-off-by: Sasha Levin --- drivers/media/i2c/tc358743.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/drivers/media/i2c/tc358743.c b/drivers/media/i2c/tc358743.c index 76c443067ec2d..ef1460c61bea0 100644 --- a/drivers/media/i2c/tc358743.c +++ b/drivers/media/i2c/tc358743.c @@ -2107,9 +2107,6 @@ static int tc358743_probe(struct i2c_client *client) state->mbus_fmt_code =3D MEDIA_BUS_FMT_RGB888_1X24; =20 sd->dev =3D &client->dev; - err =3D v4l2_async_register_subdev(sd); - if (err < 0) - goto err_hdl; =20 mutex_init(&state->confctl_mutex); =20 @@ -2167,6 +2164,10 @@ static int tc358743_probe(struct i2c_client *client) if (err) goto err_work_queues; =20 + err =3D v4l2_async_register_subdev(sd); + if (err < 0) + goto err_work_queues; + v4l2_info(sd, "%s found @ 0x%x (%s)\n", client->name, client->addr << 1, client->adapter->name); =20 --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 36E99181476; Sun, 24 Mar 2024 23:48:17 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324098; cv=none; b=iFInKKRFA3WsU+ygVAf+9UTeI8aLLIH46aicaoAjyI6aKbSBP4V8kHGFl2UckGR1AN313+jHeec55/Bq2G0bCf0fIMmCn6KUICNoBq2WgiAK1JBucSRAJ0HpZMh3i9nYJei2dhF3sYwxLn+YzRtCou0PrQiZJydlRJ9frKAkN6s= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324098; c=relaxed/simple; bh=sJQ8UZ4SBoO1+vqNVm8qn6td0Err00uTMoDvqacQoPQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=qcjSyf0BRl0ADdAihSQ0wOi9MYmcBp/QijeI0iniCOst80XTFbubHJcnDLdIvy2Z55rnD4kENQgh7AGWvSOkRhSOVj6DdeJYGmWgewtIkwrayjWQhfsBn+q/0AzJvGvCne4IWrgQPHnz56DbLlHXMfkjbiGzRVptXhWLqI7O8JU= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=Ydr9DINa; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="Ydr9DINa" Received: by smtp.kernel.org (Postfix) with ESMTPSA id C9A80C433C7; Sun, 24 Mar 2024 23:48:15 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324097; bh=sJQ8UZ4SBoO1+vqNVm8qn6td0Err00uTMoDvqacQoPQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Ydr9DINanPRQpHpb5N1DNptWHKYj8/5lep5kqpf6JI7MgzUFVm19J+XguDcw5FH/3 Vt2HYacXMdBsl0BegJzxhZWxiNWgGc/DLS1dXa2MlmECKPEmWoBTGxTy+RhhDrG7p3 FfTNpWbZjberV+0nce1QBKe1Ul7DUaefsc3hvf3Umv0ZmxqDeZaHNe8NlvKqdTZ8Zx 1bvbSFGr2R5zxZnKhicvbDkUBBqh8Csaeft6Pw1U2nxYCix66cPW4pi6KOjQ1hHM+6 mcXsi7rahGV7gNk5k984r6gd3DpTNxHFSDI762ce5IyFKqRw5CVt3s05pAAjLFLQyc Ia8CYHXxV7KuQ== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: =?UTF-8?q?Ilpo=20J=C3=A4rvinen?= , Bjorn Helgaas , Sasha Levin Subject: [PATCH 5.4 096/183] PCI/DPC: Print all TLP Prefixes, not just the first Date: Sun, 24 Mar 2024 19:45:09 -0400 Message-ID: <20240324234638.1355609-97-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable From: Ilpo J=C3=A4rvinen [ Upstream commit 6568d82512b0a64809acff3d7a747362fa4288c8 ] The TLP Prefix Log Register consists of multiple DWORDs (PCIe r6.1 sec 7.9.14.13) but the loop in dpc_process_rp_pio_error() keeps reading from the first DWORD, so we print only the first PIO TLP Prefix (duplicated several times), and we never print the second, third, etc., Prefixes. Add the iteration count based offset calculation into the config read. Fixes: f20c4ea49ec4 ("PCI/DPC: Add eDPC support") Link: https://lore.kernel.org/r/20240118110815.3867-1-ilpo.jarvinen@linux.i= ntel.com Signed-off-by: Ilpo J=C3=A4rvinen [bhelgaas: add user-visible details to commit log] Signed-off-by: Bjorn Helgaas Signed-off-by: Sasha Levin --- drivers/pci/pcie/dpc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/pci/pcie/dpc.c b/drivers/pci/pcie/dpc.c index a32ec3487a8d0..d5734a83606fb 100644 --- a/drivers/pci/pcie/dpc.c +++ b/drivers/pci/pcie/dpc.c @@ -195,7 +195,7 @@ static void dpc_process_rp_pio_error(struct dpc_dev *dp= c) =20 for (i =3D 0; i < dpc->rp_log_size - 5; i++) { pci_read_config_dword(pdev, - cap + PCI_EXP_DPC_RP_PIO_TLPPREFIX_LOG, &prefix); + cap + PCI_EXP_DPC_RP_PIO_TLPPREFIX_LOG + i * 4, &prefix); pci_err(pdev, "TLP Prefix Header: dw%d, %#010x\n", i, prefix); } clear_status: --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 71FCF18183F; Sun, 24 Mar 2024 23:48:18 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324099; cv=none; b=jYxF8Regc5cz6VNYQTyjriTrs4NSUj8D4Vr7EXQb//YQdTDJVhETAuR1Wb0ChSnKTJbqwzrEcOIZR0uA3Om5l9SbRD/K8hKhStXeC4enfNSdryVBVZMUu+hQz/3DBwsUzf9JmCmqJetXzsPuARb7pUEEW2HqHEcVhKAV7bazto8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324099; c=relaxed/simple; bh=erTOiUpc+GJ+cEYmFzYUyNrdLp5zH1m8Gi2IAi7tp90=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=H61HEEfpQ90JkwothMrPCRTJkYzMnbwc/rv7Sm8wlGP2+TCZpBvgzlcNo6v1xqi8WQk0S4W4WoSBHM6lRZvsjfhU9wNtWLj3Mrsq+yC8w4YJgomEQBjDqzXxASUM/s4D1hs4VHRFI5VhmMiF75oNf0HlNyPxNL8cJ8oIQ0sfQ3U= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=hCnewe/v; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="hCnewe/v" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 5D209C433F1; Sun, 24 Mar 2024 23:48:17 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324098; bh=erTOiUpc+GJ+cEYmFzYUyNrdLp5zH1m8Gi2IAi7tp90=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=hCnewe/vvtQ1xHI3enAkZ6QoC79y0NxA7eBrKfS9uMx25CoDacINufExtDoEI8v5T SN5t5+aOkyZtnI1yK+xrsGQhHzKn9AjrqkCFT+6ViOZyqjbcX12GxQACmMlRnznih5 uttJse1l/Kiqzgq8svut3y/3gWMMX9Z6QSn4Kp/upDYjwrfI3+Pac5sdd2Zg8avFJU 9dplubA1Fq/eqC5qo5f8g93MDSRcz5xB40i5VuIrkX7SqeangDadtvfAgDBW7Z3mcu u118SRY4ne6yg7lfl1mFVsIH01fgG1Bns/m2C+Rev9QY7axWDTnhKGoky/dE5HvpOg rjzFMnMm0xaLA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Yang Jihong , Namhyung Kim , Sasha Levin Subject: [PATCH 5.4 097/183] perf record: Fix possible incorrect free in record__switch_output() Date: Sun, 24 Mar 2024 19:45:10 -0400 Message-ID: <20240324234638.1355609-98-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Yang Jihong [ Upstream commit aff10a165201f6f60cff225083ce301ad3f5d8f1 ] perf_data__switch() may not assign a legal value to 'new_filename'. In this case, 'new_filename' uses the on-stack value, which may cause a incorrect free and unexpected result. Fixes: 03724b2e9c45 ("perf record: Allow to limit number of reported perf.d= ata files") Signed-off-by: Yang Jihong Acked-by: Namhyung Kim Link: https://lore.kernel.org/r/20240119040304.3708522-2-yangjihong1@huawei= .com Signed-off-by: Namhyung Kim Signed-off-by: Sasha Levin --- tools/perf/builtin-record.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/perf/builtin-record.c b/tools/perf/builtin-record.c index a9891c9fe94d5..9c03f67398cb2 100644 --- a/tools/perf/builtin-record.c +++ b/tools/perf/builtin-record.c @@ -1110,8 +1110,8 @@ static int record__switch_output(struct record *rec, bool at_exit) { struct perf_data *data =3D &rec->data; + char *new_filename =3D NULL; int fd, err; - char *new_filename; =20 /* Same Size: "2015122520103046"*/ char timestamp[] =3D "InvalidTimestamp"; --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id BA41C28CE4C; Sun, 24 Mar 2024 23:48:19 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324100; cv=none; b=TiQVDcV3lyiw4CZJ4x2qKFAvcE69B0h/ZnWNftPr9NmXp2SK3pX6wrwBjARfL165D8OLSkxmLPd4VERX53GfxWzbUl/yugfsfWokzO5KM5Yhp3QbvAVaqwwV2haNSDh1wl1qevGoL4pdLEn1+xQewnX+vcktMMiGjJDIVH8Ww80= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324100; c=relaxed/simple; bh=NhapjfnB4Eeq7LvrvruOrdqknPKBH/KR7oS/O09bMzI=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=WOF2FYbFzF0SkjrjWCuqEYQb4K4D3htI5Ef+tVQpeMu4uYLo9jnt19FT/Dphe5VMOvgwRicdivJP2SAlNZ5nkUTqgGUmdizwcOHyitVuaylM9HBNj1tKb1TCVxhmv/hWVdL/yhTzhUzxuqXlcVOQPkjvcMwgOMeWNUkcH4Mg0P8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=iGhb/Dja; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="iGhb/Dja" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 97656C43394; Sun, 24 Mar 2024 23:48:18 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324099; bh=NhapjfnB4Eeq7LvrvruOrdqknPKBH/KR7oS/O09bMzI=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=iGhb/DjaKHsjc22UIoRppEf1y5FI3Lq88zmWlYSWN39dxv4k4T3S9cXsNIObONB/W 33tjNi2VjUQgmBrUfRospQnol28wdlMvzryclJGOKk9nVfgxx90poHtbwHAXUfyWGG GRu89x0wlUmRdBS3mrnni/K484E8cwGohCI8esF96LRzss27r4O/Ecj1mK+8TMXWj4 AuczcPnfGOzk8I7f+TKy4dTRNRbUr2ex5LLctqNqt+Kvw2e68KDO1s7WwQYbpX6z1n 3MbSLeH+km2u+1bkVAaSx8DX+Vl/knXk2gK0QQFp/ya9/rRyxramfl+AEtTvQeJ2a1 03G27tofgGvgw== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Srinivasan Shanmugam , Wyatt Wood , Anthony Koo , Rodrigo Siqueira , Aurabindo Pillai , Alex Deucher , Sasha Levin Subject: [PATCH 5.4 098/183] drm/amd/display: Fix potential NULL pointer dereferences in 'dcn10_set_output_transfer_func()' Date: Sun, 24 Mar 2024 19:45:11 -0400 Message-ID: <20240324234638.1355609-99-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Srinivasan Shanmugam [ Upstream commit 9ccfe80d022df7c595f1925afb31de2232900656 ] The 'stream' pointer is used in dcn10_set_output_transfer_func() before the check if 'stream' is NULL. Fixes the below: drivers/gpu/drm/amd/amdgpu/../display/dc/hwss/dcn10/dcn10_hwseq.c:1892 dcn1= 0_set_output_transfer_func() warn: variable dereferenced before check 'stre= am' (see line 1875) Fixes: ddef02de0d71 ("drm/amd/display: add null checks before logging") Cc: Wyatt Wood Cc: Anthony Koo Cc: Rodrigo Siqueira Cc: Aurabindo Pillai Signed-off-by: Srinivasan Shanmugam Reviewed-by: Anthony Koo Signed-off-by: Alex Deucher Signed-off-by: Sasha Levin --- drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c b/dr= ivers/gpu/drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c index c4c99bc7f2890..3059739695d8c 100644 --- a/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c +++ b/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c @@ -1470,6 +1470,9 @@ dcn10_set_output_transfer_func(struct pipe_ctx *pipe_= ctx, { struct dpp *dpp =3D pipe_ctx->plane_res.dpp; =20 + if (!stream) + return false; + if (dpp =3D=3D NULL) return false; =20 @@ -1492,8 +1495,8 @@ dcn10_set_output_transfer_func(struct pipe_ctx *pipe_= ctx, } else dpp->funcs->dpp_program_regamma_pwl(dpp, NULL, OPP_REGAMMA_BYPASS); =20 - if (stream !=3D NULL && stream->ctx !=3D NULL && - stream->out_transfer_func !=3D NULL) { + if (stream->ctx && + stream->out_transfer_func) { log_tf(stream->ctx, stream->out_transfer_func, dpp->regamma_params.hw_points_num); --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 2B32228CE58; Sun, 24 Mar 2024 23:48:20 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324102; cv=none; b=h/Gp8tNxiZgljKWfedcaIPlhJsJA4kpfxFIxe7qXXyAcgDm5VprDbdUFteXy+hYCuJ+e9cmjPZ5ylorZ4C3M29cFodtDI6UAHE8U1hzpPt+shn3KFMVb52Qknpa7M5ITIxM+UBUCebMZaSMdje5Axq+fvzE+8tUz4HIWgLE6Ecc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324102; c=relaxed/simple; bh=DM3144Oh7P+rTj9j/aPXAQpmxvre+5VOHDnvu7WjSos=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=tic8dGaTmDdcR+i33Yyr10KI54IAvPYDqC+T92kl/6Sr4Ov9cES+pTayAsW/xd/8yrYR4bRNLPQRt6b65Ty97qvYpMLDyjMAJ3dnWGD92Obbj85ixVHtpR43e2geCl/qZYU3Q3slM8NcL8/eeZVgz8cOjC2Me9bUDqf3tYHo93Q= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=CaP3Ixi3; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="CaP3Ixi3" Received: by smtp.kernel.org (Postfix) with ESMTPSA id DD232C433C7; Sun, 24 Mar 2024 23:48:19 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324100; bh=DM3144Oh7P+rTj9j/aPXAQpmxvre+5VOHDnvu7WjSos=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=CaP3Ixi3H98OZ1RcpRgEPrUlXb1r/bpt8X7W1fhbzQ+exTFsHMnHBnoBpTdJ92zGs uE0YAcLvCOQwcCZrhgIfJyCofAUIp0U1J/tIdbZzBM3GMFVw8c6IFBydagYHyjt674 bGABQWgMnKZ27jdgJNKUMCy6+JM1hhOXszjkS7FLZUxQ7IYYovRWuGZVLEuSWK/CQ+ 6XrL6NxvVQyWLok/hZTbIpMlUFQBt2ut6dxVFuzDLew3P6UyHO2lldVkJUSByEV6s4 gs9wo711Uur/ecR2+wmImVVbzUGJQ/6OghYviJaDc1Fyr+W9wGkM2IniMqmsX3TzAr CWRZWajZjoT3Q== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Yang Jihong , Arnaldo Carvalho de Melo , Ian Rogers , Namhyung Kim , Sasha Levin Subject: [PATCH 5.4 099/183] perf evsel: Fix duplicate initialization of data->id in evsel__parse_sample() Date: Sun, 24 Mar 2024 19:45:12 -0400 Message-ID: <20240324234638.1355609-100-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Yang Jihong [ Upstream commit 4962aec0d684c8edb14574ccd0da53e4926ff834 ] data->id has been initialized at line 2362, remove duplicate initialization. Fixes: 3ad31d8a0df2 ("perf evsel: Centralize perf_sample initialization") Signed-off-by: Yang Jihong Reviewed-by: Arnaldo Carvalho de Melo Reviewed-by: Ian Rogers Signed-off-by: Namhyung Kim Link: https://lore.kernel.org/r/20240127025756.4041808-1-yangjihong1@huawei= .com Signed-off-by: Sasha Levin --- tools/perf/util/evsel.c | 1 - 1 file changed, 1 deletion(-) diff --git a/tools/perf/util/evsel.c b/tools/perf/util/evsel.c index 9dd9e3f4ef591..cd1eddf0ab371 100644 --- a/tools/perf/util/evsel.c +++ b/tools/perf/util/evsel.c @@ -1955,7 +1955,6 @@ int perf_evsel__parse_sample(struct evsel *evsel, uni= on perf_event *event, data->period =3D evsel->core.attr.sample_period; data->cpumode =3D event->header.misc & PERF_RECORD_MISC_CPUMODE_MASK; data->misc =3D event->header.misc; - data->id =3D -1ULL; data->data_src =3D PERF_MEM_DATA_SRC_NONE; =20 if (event->header.type !=3D PERF_RECORD_SAMPLE) { --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id BCF0328CE50; Sun, 24 Mar 2024 23:48:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324102; cv=none; b=HcniyyCCNk1RXPfrk3/OxH9cmnXy/FgpJOvnUIbLSqWrmhi5XabF2dSkP5aFIPkGpa55wZ3mycSY94RW1Dgvud45a3QOfhXqMLQmZtsO++VA7V18+ht2ZV1gJKSuR9Yy231lrg9JSe+0dM7VJt1MIgMC+AKVtqpOKUa7z4dW99M= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324102; c=relaxed/simple; bh=YcHd1bswbqsnEctIwDQgIBMvzzOmYcfo7MBYD+mF5Mw=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=MgUobtF2D2rsGcT70f+pNiqs1SkzuAybUBMwSRfCW0MhMDjffor44WZWPSj+crgRbgNDoLTdUY28c4z92ZOdOxLvyR2/QtJzY1/nRyEn09dRBYB7oI26+TVnqtO52l9tl9CV8ZPfWItlvTN//iIb/+aGekMucQItjogO69kL4wg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=u02dUute; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="u02dUute" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 023F8C43390; Sun, 24 Mar 2024 23:48:20 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324101; bh=YcHd1bswbqsnEctIwDQgIBMvzzOmYcfo7MBYD+mF5Mw=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=u02dUuteFUfk/PPyTR7Ff2aZQpLuAqXi1DDPgJDGoGfEEVCZDYujgz4h8dvWNtOlI E+oiNqcOGER/CTfX5l92tqhyXiFLWPGb/7F4RMPzYMY7fNUGLQk4V7e3nTpURFEBJm r02hoJcUyDVxpXVJcFjvNstcju26l9/Xmn/IsRL2Pg7YfHjH21T7qmWE5Wd3mirARt Q5EGjCo2x6Wvx2G9O5S7DGclxS9LCCq6weoksnisSjEAD/TD0HREPoXbEzxkzQmAcd BASm+gWnj+ru5jZLDOQMCyAQemgTGYiMNtXzDBWUgVMOKJvluUYIlNsBWyScVXjaFk PaQBPMZ9jxYeg== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Johan Hovold , Bjorn Helgaas , Sasha Levin Subject: [PATCH 5.4 100/183] PCI/AER: Fix rootport attribute paths in ABI docs Date: Sun, 24 Mar 2024 19:45:13 -0400 Message-ID: <20240324234638.1355609-101-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Johan Hovold [ Upstream commit 0e7d29a39a546161ea3a49e8e282a43212d7ff68 ] The 'aer_stats' directory never made it into the sixth and final revision of the series adding the sysfs AER attributes. Link: https://lore.kernel.org/r/20240202131635.11405-2-johan+linaro@kernel.= org Link: https://lore.kernel.org/lkml/20180621184822.GB14136@bhelgaas-glaptop.= roam.corp.google.com/ Fixes: 12833017e581 ("PCI/AER: Add sysfs attributes for rootport cumulative= stats") Signed-off-by: Johan Hovold Signed-off-by: Bjorn Helgaas Signed-off-by: Sasha Levin --- Documentation/ABI/testing/sysfs-bus-pci-devices-aer_stats | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Documentation/ABI/testing/sysfs-bus-pci-devices-aer_stats b/Do= cumentation/ABI/testing/sysfs-bus-pci-devices-aer_stats index 3c9a8c4a25eb8..988724cc85182 100644 --- a/Documentation/ABI/testing/sysfs-bus-pci-devices-aer_stats +++ b/Documentation/ABI/testing/sysfs-bus-pci-devices-aer_stats @@ -103,19 +103,19 @@ collectors) that are AER capable. These indicate the = number of error messages as device, so these counters include them and are thus cumulative of all the = error messages on the PCI hierarchy originating at that root port. =20 -What: /sys/bus/pci/devices//aer_stats/aer_rootport_total_err_cor +What: /sys/bus/pci/devices//aer_rootport_total_err_cor Date: July 2018 KernelVersion: 4.19.0 Contact: linux-pci@vger.kernel.org, rajatja@google.com Description: Total number of ERR_COR messages reported to rootport. =20 -What: /sys/bus/pci/devices//aer_stats/aer_rootport_total_err_fatal +What: /sys/bus/pci/devices//aer_rootport_total_err_fatal Date: July 2018 KernelVersion: 4.19.0 Contact: linux-pci@vger.kernel.org, rajatja@google.com Description: Total number of ERR_FATAL messages reported to rootport. =20 -What: /sys/bus/pci/devices//aer_stats/aer_rootport_total_err_nonf= atal +What: /sys/bus/pci/devices//aer_rootport_total_err_nonfatal Date: July 2018 KernelVersion: 4.19.0 Contact: linux-pci@vger.kernel.org, rajatja@google.com --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B7CFA28CE68; Sun, 24 Mar 2024 23:48:22 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324103; cv=none; b=Ukd2c0ZwCC22ZCj5wJDEOBuwys5/mDwF2hGJaJpK+ycRCC3Mpvk/gH/WO7RX6jl+jPt7DsToIP6nqfnGt0+s+9i9jmSaPGPWqSstgTk+0/7gdlmztAM7ffldbkjWF4Tdol8zJkHFOtefeDh+/txkk72DbrBpMh/VLJD9ivEWq90= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324103; c=relaxed/simple; bh=X25k7Z7+vINRWTsz5TQiny62GTHkXwas2jA9xHC2Df0=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=io3NU/L95CtNWaYn6kJJohKlXVyAPqCK5L6KVZWu3G0yV/aghbhZgG2lTfloj6pL/ILqY5MQMlbnYDy0HqzhWYFCmBncWq/atyQn7snVn6zq+zuge7fXv67qWBL+iCgHRgQm08qm280Uqkh0XUNgndEHgtvhbS3EwMWq1O9yAzo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=Nd8nnbRl; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="Nd8nnbRl" Received: by smtp.kernel.org (Postfix) with ESMTPSA id DF218C43399; Sun, 24 Mar 2024 23:48:21 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324102; bh=X25k7Z7+vINRWTsz5TQiny62GTHkXwas2jA9xHC2Df0=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Nd8nnbRlJC8iiA2u6kC0eybY94O8ZMtoycBWR4QXJtuQTaUI+1CMD3QmwXpKEA+9h pFUG09AxCZCOFEQf/8NQGAAArFm5Wyp+FI+Do/395vFeq7YA5AFSfd+UvTRyTlycUQ 9mdxwitq9JlmSPnghfi0UKNf4j4zVJeOAa8MMivHkT4jPLsv2PDeJkgpPEXYK6/BGo mk5T6ueXD5EU88iewrYe+C1YjOS8wDoMzsSugq3Q18DD/lCCzaqjY7zGE3ZkJua1ws aNcDb+rguCT5vb1Df0+LH531Lt6ZYcd/fDTdnp0YujAjYOkFHa1xuZoOf8XTaSkJYJ lwY2W1QTFfkxQ== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Nikita Zhandarovich , Mauro Carvalho Chehab , Hans Verkuil , Sasha Levin Subject: [PATCH 5.4 101/183] media: em28xx: annotate unchecked call to media_device_register() Date: Sun, 24 Mar 2024 19:45:14 -0400 Message-ID: <20240324234638.1355609-102-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Nikita Zhandarovich [ Upstream commit fd61d77a3d28444b2635f0c8b5a2ecd6a4d94026 ] Static analyzers generate alerts for an unchecked call to `media_device_register()`. However, in this case, the device will work reliably without the media controller API. Add a comment above the call to prevent future unnecessary changes. Suggested-by: Mauro Carvalho Chehab Fixes: 37ecc7b1278f ("[media] em28xx: add media controller support") Signed-off-by: Nikita Zhandarovich Signed-off-by: Hans Verkuil Signed-off-by: Sasha Levin --- drivers/media/usb/em28xx/em28xx-cards.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/media/usb/em28xx/em28xx-cards.c b/drivers/media/usb/em= 28xx/em28xx-cards.c index 5ae13ee9272d5..252e463cc13b4 100644 --- a/drivers/media/usb/em28xx/em28xx-cards.c +++ b/drivers/media/usb/em28xx/em28xx-cards.c @@ -3989,6 +3989,10 @@ static int em28xx_usb_probe(struct usb_interface *in= tf, * topology will likely change after the load of the em28xx subdrivers. */ #ifdef CONFIG_MEDIA_CONTROLLER + /* + * No need to check the return value, the device will still be + * usable without media controller API. + */ retval =3D media_device_register(dev->media_dev); #endif =20 --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id A228D28CE66; Sun, 24 Mar 2024 23:48:23 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324103; cv=none; b=kt5bC9FcLKp13dro8sYTBDaZn2tQrZ0G/BPlGr0n4PEexqfUYWtXZK9q/eU8Ej70KpgybGnAWgc0wU3uMyMC7nu9AE0CdczH5bP3B89nBzs9WJwD1EbF103UquUFAelHu+ejp91tAMwLHlHgg63z+udBxdYBaJp7CKYmdrg112M= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324103; c=relaxed/simple; bh=ELk0CTEYjYXs7vrm1JGfKcs7K4yQgG+4Xdc7nUafxQg=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=iE/GrqkagB0mJLC8oNwDVfDOgp02z4Iv79LYl3mKDqNAYF35EwGxTL6zbBr4AcyGYw/4cYnYA5NNQySUclsu/tqz/m+x52ZeHbFZRp4TpC0k3J9tTIZg4sjZGZWuM4CyuzA0a1Yhf0gMPq7GBI1UTSstOAldPLDy7Q2IpDckST4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=LX5eJHdS; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="LX5eJHdS" Received: by smtp.kernel.org (Postfix) with ESMTPSA id DF74BC433F1; Sun, 24 Mar 2024 23:48:22 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324103; bh=ELk0CTEYjYXs7vrm1JGfKcs7K4yQgG+4Xdc7nUafxQg=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=LX5eJHdSUgOvAGmnXl4Sl2SayftTkCVk759RDKPZs3uRoGWxOrwTZaMY4ov9bTfP3 Jlu2wRCdztxDhThhLacZbE+qTHiwaD1TnkqVeJMoHcgP1wiW5DX2tN0Lq79LCTL8U1 Beg1fnu35o7m5GxPYZa68U3KrqiqElIbXRjaM0OXEOY+Nt1qpeT56qrD2aLc2QRvdZ Iet3JT9k9a86Ol+cjjb49Dp5pCuM1CPbnv7ckfSLoXHa6C35v+c/kjZ1yoxWhOD5Lr RRlHgW5lZb8ZKtSBgZ+rpMZmI1Pt1oCdmL7Hd0lEdYonUVu3rFElfM9R7ZWrAmirox urb7VUjAzi9SA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Zhipeng Lu , Hans Verkuil , Sasha Levin Subject: [PATCH 5.4 102/183] media: v4l2-tpg: fix some memleaks in tpg_alloc Date: Sun, 24 Mar 2024 19:45:15 -0400 Message-ID: <20240324234638.1355609-103-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Zhipeng Lu [ Upstream commit 8cf9c5051076e0eb958f4361d50d8b0c3ee6691c ] In tpg_alloc, resources should be deallocated in each and every error-handling paths, since they are allocated in for statements. Otherwise there would be memleaks because tpg_free is called only when tpg_alloc return 0. Fixes: 63881df94d3e ("[media] vivid: add the Test Pattern Generator") Signed-off-by: Zhipeng Lu Signed-off-by: Hans Verkuil Signed-off-by: Sasha Levin --- drivers/media/common/v4l2-tpg/v4l2-tpg-core.c | 52 +++++++++++++++---- 1 file changed, 42 insertions(+), 10 deletions(-) diff --git a/drivers/media/common/v4l2-tpg/v4l2-tpg-core.c b/drivers/media/= common/v4l2-tpg/v4l2-tpg-core.c index 50f1e0b28b250..a4d729a4f3301 100644 --- a/drivers/media/common/v4l2-tpg/v4l2-tpg-core.c +++ b/drivers/media/common/v4l2-tpg/v4l2-tpg-core.c @@ -113,6 +113,7 @@ int tpg_alloc(struct tpg_data *tpg, unsigned max_w) { unsigned pat; unsigned plane; + int ret =3D 0; =20 tpg->max_line_width =3D max_w; for (pat =3D 0; pat < TPG_MAX_PAT_LINES; pat++) { @@ -121,14 +122,18 @@ int tpg_alloc(struct tpg_data *tpg, unsigned max_w) =20 tpg->lines[pat][plane] =3D vzalloc(array3_size(max_w, 2, pixelsz)); - if (!tpg->lines[pat][plane]) - return -ENOMEM; + if (!tpg->lines[pat][plane]) { + ret =3D -ENOMEM; + goto free_lines; + } if (plane =3D=3D 0) continue; tpg->downsampled_lines[pat][plane] =3D vzalloc(array3_size(max_w, 2, pixelsz)); - if (!tpg->downsampled_lines[pat][plane]) - return -ENOMEM; + if (!tpg->downsampled_lines[pat][plane]) { + ret =3D -ENOMEM; + goto free_lines; + } } } for (plane =3D 0; plane < TPG_MAX_PLANES; plane++) { @@ -136,18 +141,45 @@ int tpg_alloc(struct tpg_data *tpg, unsigned max_w) =20 tpg->contrast_line[plane] =3D vzalloc(array_size(pixelsz, max_w)); - if (!tpg->contrast_line[plane]) - return -ENOMEM; + if (!tpg->contrast_line[plane]) { + ret =3D -ENOMEM; + goto free_contrast_line; + } tpg->black_line[plane] =3D vzalloc(array_size(pixelsz, max_w)); - if (!tpg->black_line[plane]) - return -ENOMEM; + if (!tpg->black_line[plane]) { + ret =3D -ENOMEM; + goto free_contrast_line; + } tpg->random_line[plane] =3D vzalloc(array3_size(max_w, 2, pixelsz)); - if (!tpg->random_line[plane]) - return -ENOMEM; + if (!tpg->random_line[plane]) { + ret =3D -ENOMEM; + goto free_contrast_line; + } } return 0; + +free_contrast_line: + for (plane =3D 0; plane < TPG_MAX_PLANES; plane++) { + vfree(tpg->contrast_line[plane]); + vfree(tpg->black_line[plane]); + vfree(tpg->random_line[plane]); + tpg->contrast_line[plane] =3D NULL; + tpg->black_line[plane] =3D NULL; + tpg->random_line[plane] =3D NULL; + } +free_lines: + for (pat =3D 0; pat < TPG_MAX_PAT_LINES; pat++) + for (plane =3D 0; plane < TPG_MAX_PLANES; plane++) { + vfree(tpg->lines[pat][plane]); + tpg->lines[pat][plane] =3D NULL; + if (plane =3D=3D 0) + continue; + vfree(tpg->downsampled_lines[pat][plane]); + tpg->downsampled_lines[pat][plane] =3D NULL; + } + return ret; } EXPORT_SYMBOL_GPL(tpg_alloc); =20 --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 994E328CE7A; Sun, 24 Mar 2024 23:48:24 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324105; cv=none; b=olOr73By+kfIO23jFsPQFS1uV2W1VuolCCBVILkitXa42hlPIAfU/HJuLZuTtpsWtClVQ1X+n0IuU6TLtu1rRBjGmEofC0klGXpmoRQpz9LaFE4juGBwA+MrhEfeh5WV/MdxEla5hFoAfh95J+XIDoGCdfrqScg6u2way91qDts= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324105; c=relaxed/simple; bh=pR1er8jPDX+T1NSc81hDwj4KYR4Ba00o1SJz9wmNUxc=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=AxP2wbI8T7JUvdgUdxbluLBPbgZ3uH9PvbwNJTtgdwMZDkksMpR7KzpJLksQF/quGP4bc5fJGbhDwCjiBQsfUAVwpGdOqP4Pmw/0dHsZQkDPr2ZcAnIbo01USlk1bFk2qRatu/zVdo2lyBq07lir/Yvk5NmBP59QNuessjFBGoY= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=Im0jsLHn; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="Im0jsLHn" Received: by smtp.kernel.org (Postfix) with ESMTPSA id C6C5FC433A6; Sun, 24 Mar 2024 23:48:23 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324104; bh=pR1er8jPDX+T1NSc81hDwj4KYR4Ba00o1SJz9wmNUxc=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Im0jsLHnmImoqiWvXeACChsWDNrX+J2vHTNXbnDdaPaF6Ru3FvCgE30a9q/F7KQeh uADGbjWzVZ8uImrP5BRZSebN+abBcwVP3eLgj1WJSR/goWvzKWHaUcLlUO09FqO7rs DSm9/ZQ7KY0xHBUGDvrFT8vZzCQiHRzAVDJVfSbkw33iI3ue4W1feggjdkjpbnnhYd 8xADR++N0YeNjnjBitg56O12r9nHw1tmBtjh4wzZoaW+Ai/14OOQgFDjMZ5mqc2RUB 9oIO9KiB0VOSjyfRzM2+du9kzgy6eYhVuwIS0opq+VefnsOyJt4EFM3Yx8JJEMaNw+ Uxf+TdFnAYEqw== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Zhipeng Lu , Hans Verkuil , Sasha Levin Subject: [PATCH 5.4 103/183] media: v4l2-mem2mem: fix a memleak in v4l2_m2m_register_entity Date: Sun, 24 Mar 2024 19:45:16 -0400 Message-ID: <20240324234638.1355609-104-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Zhipeng Lu [ Upstream commit 8f94b49a5b5d386c038e355bef6347298aabd211 ] The entity->name (i.e. name) is allocated in v4l2_m2m_register_entity but isn't freed in its following error-handling paths. This patch adds such deallocation to prevent memleak of entity->name. Fixes: be2fff656322 ("media: add helpers for memory-to-memory media control= ler") Signed-off-by: Zhipeng Lu Signed-off-by: Hans Verkuil Signed-off-by: Sasha Levin --- drivers/media/v4l2-core/v4l2-mem2mem.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/drivers/media/v4l2-core/v4l2-mem2mem.c b/drivers/media/v4l2-co= re/v4l2-mem2mem.c index d56837c04a81a..b374c9fab4b9e 100644 --- a/drivers/media/v4l2-core/v4l2-mem2mem.c +++ b/drivers/media/v4l2-core/v4l2-mem2mem.c @@ -799,11 +799,17 @@ static int v4l2_m2m_register_entity(struct media_devi= ce *mdev, entity->function =3D function; =20 ret =3D media_entity_pads_init(entity, num_pads, pads); - if (ret) + if (ret) { + kfree(entity->name); + entity->name =3D NULL; return ret; + } ret =3D media_device_register_entity(mdev, entity); - if (ret) + if (ret) { + kfree(entity->name); + entity->name =3D NULL; return ret; + } =20 return 0; } --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 850BA28CE78; Sun, 24 Mar 2024 23:48:25 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324105; cv=none; b=uztODX3VFsIzqTKGbRt2kNjjqAPnmBRSZc+D0LtPnA4OEO6f0UKN59qmFuptLN7ALbSEqNDt+QjJK7WqHXG0eQGu7gof2KaIEwiyxCJHsQCa3oCVP7DF1Tb0iKnRgkhj6dieNe6pSGC0nS4PgQ4+do15GuANhAyzaD3EZQOQjsU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324105; c=relaxed/simple; bh=hgUpuViv5Aw3BUxglSeTlqPdxDXq6iJ0b43GOvVNMho=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=X33HbiILHO4VnoxIyiEw/Z515+WGJ9pD2pNCPoinaCciO9g8XXuqTw3vQBE5Z+M+2PfuV17lZrr1l7kJ65CqSPDaG9iy7pS++v7KWCV7kP/ZysvgV9SuguIWw9CjFko/ycAU1fecAs65Fob7Az0bIIQoVxXzHiFjTegr8FGS3tg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=WDADDOEZ; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="WDADDOEZ" Received: by smtp.kernel.org (Postfix) with ESMTPSA id AADA3C433C7; Sun, 24 Mar 2024 23:48:24 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324105; bh=hgUpuViv5Aw3BUxglSeTlqPdxDXq6iJ0b43GOvVNMho=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=WDADDOEZvI45G9tl6WBEoxA4ZvUGIo6O43dB/bSktR7HLtIWJvhTxeBKrdCP7gfSP cBMn2VhUUl+3ixdW2FRMwP4KaTY3ranUdSUKDtJ6z7w7ZZBHdJW3Yf/d5IiX3ooHdX UkWWz2Kks7/RtzcRxe4W9Fmnu037sipkv2ARQL6qE9W8wFf1a37T3Wcozv1gjwXNly 6ZddG9mUM/zKjxCLcomt+GAkeXT1Huo10lRc8lO+eqUuaEuCDOuZAnT5f64XqDrgwT vCyFjo226fKNdIv13vqXC2f+5/y+O431tjl7A+WvXXzQDmf4uZG7tawn3ib7M2vBbb x3utDKsAoUE3Q== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Zhipeng Lu , Mauro Carvalho Chehab , Sasha Levin Subject: [PATCH 5.4 104/183] media: edia: dvbdev: fix a use-after-free Date: Sun, 24 Mar 2024 19:45:17 -0400 Message-ID: <20240324234638.1355609-105-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Zhipeng Lu [ Upstream commit 8c64f4cdf4e6cc5682c52523713af8c39c94e6d5 ] In dvb_register_device, *pdvbdev is set equal to dvbdev, which is freed in several error-handling paths. However, *pdvbdev is not set to NULL after dvbdev's deallocation, causing use-after-frees in many places, for example, in the following call chain: budget_register |-> dvb_dmxdev_init |-> dvb_register_device |-> dvb_dmxdev_release |-> dvb_unregister_device |-> dvb_remove_device |-> dvb_device_put |-> kref_put When calling dvb_unregister_device, dmxdev->dvbdev (i.e. *pdvbdev in dvb_register_device) could point to memory that had been freed in dvb_register_device. Thereafter, this pointer is transferred to kref_put and triggering a use-after-free. Link: https://lore.kernel.org/linux-media/20240203134046.3120099-1-alexious= @zju.edu.cn Fixes: b61901024776 ("V4L/DVB (5244): Dvbdev: fix illegal re-usage of fileo= perations struct") Signed-off-by: Zhipeng Lu Signed-off-by: Mauro Carvalho Chehab Signed-off-by: Sasha Levin --- drivers/media/dvb-core/dvbdev.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/drivers/media/dvb-core/dvbdev.c b/drivers/media/dvb-core/dvbde= v.c index e7cd7b13fc28c..d4d903a9dc31e 100644 --- a/drivers/media/dvb-core/dvbdev.c +++ b/drivers/media/dvb-core/dvbdev.c @@ -504,6 +504,7 @@ int dvb_register_device(struct dvb_adapter *adap, struc= t dvb_device **pdvbdev, dvbdevfops =3D kmemdup(template->fops, sizeof(*dvbdevfops), GFP_KERNEL); if (!dvbdevfops) { kfree(dvbdev); + *pdvbdev =3D NULL; mutex_unlock(&dvbdev_register_lock); return -ENOMEM; } @@ -512,6 +513,7 @@ int dvb_register_device(struct dvb_adapter *adap, struc= t dvb_device **pdvbdev, if (!new_node) { kfree(dvbdevfops); kfree(dvbdev); + *pdvbdev =3D NULL; mutex_unlock(&dvbdev_register_lock); return -ENOMEM; } @@ -545,6 +547,7 @@ int dvb_register_device(struct dvb_adapter *adap, struc= t dvb_device **pdvbdev, } list_del (&dvbdev->list_head); kfree(dvbdev); + *pdvbdev =3D NULL; up_write(&minor_rwsem); mutex_unlock(&dvbdev_register_lock); return -EINVAL; @@ -567,6 +570,7 @@ int dvb_register_device(struct dvb_adapter *adap, struc= t dvb_device **pdvbdev, dvb_media_device_free(dvbdev); list_del (&dvbdev->list_head); kfree(dvbdev); + *pdvbdev =3D NULL; mutex_unlock(&dvbdev_register_lock); return ret; } @@ -585,6 +589,7 @@ int dvb_register_device(struct dvb_adapter *adap, struc= t dvb_device **pdvbdev, dvb_media_device_free(dvbdev); list_del (&dvbdev->list_head); kfree(dvbdev); + *pdvbdev =3D NULL; mutex_unlock(&dvbdev_register_lock); return PTR_ERR(clsdev); } --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 566F218147F; Sun, 24 Mar 2024 23:48:26 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324107; cv=none; b=ZUiUl4uMFTsEI1LezNQ+YvRxmYNzGI5Cgarl41YDwiqgIyvPTOaCuP/y6E/pTzyoWhXMML7MlCgn5/l21F1UcfviRZAVUQ2ZMaj0uitizRxwUSNQF6kYgxQg6AzaqM6nXDnSm3eBNDxV588mDhXofgcRCbYvAs8xewjDsAnUf0s= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324107; c=relaxed/simple; bh=iHOmPupuYN1u4C6Wff80pv7Gaw7k94/ErZJbEesHVgs=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=Sr+CD1cOVRMXjboBSBeDvrb4sd0AvNFNJOMUs5iIn9NvK6/pFrbgDAXLc4BZwy6hfTxyD21Uc0GIjMw98JX7bUAFvMfb82KhsCSXFesl3APSvuyMQnenbgU2QylWVsJOlaNBx0zi/sZyyQrVQmXFYPFcOuwFYmgyoZYg+12qIXM= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=oYCDEdy+; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="oYCDEdy+" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 96498C433F1; Sun, 24 Mar 2024 23:48:25 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324106; bh=iHOmPupuYN1u4C6Wff80pv7Gaw7k94/ErZJbEesHVgs=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=oYCDEdy+DAaVIVgVL8WTyEobvANwV1Q0wxd7X/PO7655XKYLyCsZGjXqp8Wiqo3JF 1SYnzxUXwQPG99/PmTBgMPrEwlFxdUzuFKuDPNgXujc/Oxu25zSz53vA4lBpOazH/o q4sLXysqKbGCrnZ2yyPb1aAoauPqurWi6HuzMZ4XmZHi0yJsCzQbc6eGryZ98H/3v4 q0Cfe6Bte599jg/03pcZjKlgRFuGM0tdHobyhgSJ6trhmT7ILtj0pluG+sW8yzCZOM XpthUfdOhGAcUVI64REgutgYJi4SHyp/czYdxNENyvMZtI/W0Ty6slCgWZN/4bUthJ ihbBoR9mGueYQ== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Stephan Gerhold , Bjorn Andersson , Sasha Levin Subject: [PATCH 5.4 105/183] clk: qcom: reset: Allow specifying custom reset delay Date: Sun, 24 Mar 2024 19:45:18 -0400 Message-ID: <20240324234638.1355609-106-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Stephan Gerhold [ Upstream commit 2cb8a39b6781ea23accd1fa93b3ad000d0948aec ] The amount of time required between asserting and deasserting the reset signal can vary depending on the involved hardware component. Sometimes 1 us might not be enough and a larger delay is necessary to conform to the specifications. Usually this is worked around in the consuming drivers, by replacing reset_control_reset() with a sequence of reset_control_assert(), waiting for a custom delay, followed by reset_control_deassert(). However, in some cases the driver making use of the reset is generic and can be used with different reset controllers. In this case the reset time requirement is better handled directly by the reset controller driver. Make this possible by adding an "udelay" field to the qcom_reset_map that allows setting a different reset delay (in microseconds). Signed-off-by: Stephan Gerhold Signed-off-by: Bjorn Andersson Link: https://lore.kernel.org/r/20220706134132.3623415-4-stephan.gerhold@ke= rnkonzept.com Stable-dep-of: 2f8cf2c3f3e3 ("clk: qcom: reset: Ensure write completion on = reset de/assertion") Signed-off-by: Sasha Levin --- drivers/clk/qcom/reset.c | 4 +++- drivers/clk/qcom/reset.h | 1 + 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/drivers/clk/qcom/reset.c b/drivers/clk/qcom/reset.c index 819d194be8f7b..2a16adb572d2b 100644 --- a/drivers/clk/qcom/reset.c +++ b/drivers/clk/qcom/reset.c @@ -13,8 +13,10 @@ =20 static int qcom_reset(struct reset_controller_dev *rcdev, unsigned long id) { + struct qcom_reset_controller *rst =3D to_qcom_reset_controller(rcdev); + rcdev->ops->assert(rcdev, id); - udelay(1); + udelay(rst->reset_map[id].udelay ?: 1); /* use 1 us as default */ rcdev->ops->deassert(rcdev, id); return 0; } diff --git a/drivers/clk/qcom/reset.h b/drivers/clk/qcom/reset.h index 2a08b5e282c77..b8c113582072b 100644 --- a/drivers/clk/qcom/reset.h +++ b/drivers/clk/qcom/reset.h @@ -11,6 +11,7 @@ struct qcom_reset_map { unsigned int reg; u8 bit; + u8 udelay; }; =20 struct regmap; --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 3DFDC18148A; Sun, 24 Mar 2024 23:48:27 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324108; cv=none; b=DdFTK0h46L1SF7bdCZjos8c9Vo9jc3ALzK87sRP/ztrK3qeEKsuN7WtIH2fvaH5NSRIo2Vih8pN1C+dGBytPLb0cUmTUPjBf4qt79RCNubP+KS9/7MBHSLbXxJv5MKsz9bl128Kkh+y/9qqiC+C1Z/j+voZlJ7RSBL99XbdJA3U= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324108; c=relaxed/simple; bh=xrN0NI/UzUokrl36YEZidI4lp+eL3iyinCugmIvfvhw=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=RbAr93t2GqY3q9kfbwrpdwfneXvhKC0GH67hhW4CfSpi5yq3oVTwAl1tkDmybohSIgdEVpnxRxhxdGpKDtxmUicILsvAiYgMLALoVWWyJ52PtgHKnv/REJ79rRocACAr5XDLvotei3yDHnmJWCJCQBCqN5VclreNmYAuHISbUlw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=TVMRGc6i; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="TVMRGc6i" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 7C343C433A6; Sun, 24 Mar 2024 23:48:26 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324107; bh=xrN0NI/UzUokrl36YEZidI4lp+eL3iyinCugmIvfvhw=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=TVMRGc6iXCylAl2ULexLmI87qAW4hrivSFR+Ko7msITgWstkCpfl0rLGQyoyssQRS xxpTsobDePYmFm/d1ZXRXKxB1Dk9jLEgxAKFiZH58q6rPO7IXGoU/P4TohCsTYlcts Q7e0WT8z0SnJFU4DxckOeuFGVWXPSOGo5T+Hl4ztM5u2vHIyGcoGCFa7C7INF7Ylww /JdsGtf0FFwKu0b6oHzheznrSybnnkHr4l1FPdlwdG6s/+yUuSjfsOQ/V2XZQISwE9 Hy6KL8BZApBU/5EQYUKj0Mp/LbXIu0O+M2zy9hWQ7RPoNmVMsfkL+TyKNx2TgMM4de 7KmlXruXVCmaQ== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Robert Marko , Bjorn Andersson , Sasha Levin Subject: [PATCH 5.4 106/183] clk: qcom: reset: support resetting multiple bits Date: Sun, 24 Mar 2024 19:45:19 -0400 Message-ID: <20240324234638.1355609-107-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Robert Marko [ Upstream commit 4a5210893625f89723ea210d7c630b730abb37ad ] This patch adds the support for giving the complete bitmask in reset structure and reset operation will use this bitmask for all reset operations. Currently, reset structure only takes a single bit for each reset and then calculates the bitmask by using the BIT() macro. However, this is not sufficient anymore for newer SoC-s like IPQ8074, IPQ6018 and more, since their networking resets require multiple bits to be asserted in order to properly reset the HW block completely. So, in order to allow asserting multiple bits add "bitmask" field to qcom_reset_map, and then use that bitmask value if its populated in the driver, if its not populated, then we just default to existing behaviour and calculate the bitmask on the fly. Signed-off-by: Robert Marko Signed-off-by: Bjorn Andersson Link: https://lore.kernel.org/r/20221107132901.489240-1-robimarko@gmail.com Stable-dep-of: 2f8cf2c3f3e3 ("clk: qcom: reset: Ensure write completion on = reset de/assertion") Signed-off-by: Sasha Levin --- drivers/clk/qcom/reset.c | 4 ++-- drivers/clk/qcom/reset.h | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/drivers/clk/qcom/reset.c b/drivers/clk/qcom/reset.c index 2a16adb572d2b..0e914ec7aeae1 100644 --- a/drivers/clk/qcom/reset.c +++ b/drivers/clk/qcom/reset.c @@ -30,7 +30,7 @@ qcom_reset_assert(struct reset_controller_dev *rcdev, uns= igned long id) =20 rst =3D to_qcom_reset_controller(rcdev); map =3D &rst->reset_map[id]; - mask =3D BIT(map->bit); + mask =3D map->bitmask ? map->bitmask : BIT(map->bit); =20 return regmap_update_bits(rst->regmap, map->reg, mask, mask); } @@ -44,7 +44,7 @@ qcom_reset_deassert(struct reset_controller_dev *rcdev, u= nsigned long id) =20 rst =3D to_qcom_reset_controller(rcdev); map =3D &rst->reset_map[id]; - mask =3D BIT(map->bit); + mask =3D map->bitmask ? map->bitmask : BIT(map->bit); =20 return regmap_update_bits(rst->regmap, map->reg, mask, 0); } diff --git a/drivers/clk/qcom/reset.h b/drivers/clk/qcom/reset.h index b8c113582072b..9a47c838d9b1b 100644 --- a/drivers/clk/qcom/reset.h +++ b/drivers/clk/qcom/reset.h @@ -12,6 +12,7 @@ struct qcom_reset_map { unsigned int reg; u8 bit; u8 udelay; + u32 bitmask; }; =20 struct regmap; --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 5ECEA18148E; Sun, 24 Mar 2024 23:48:28 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324109; cv=none; b=fQIinS82k0PunnY+sZ15ZBe5Knt7puZtVtVhp6qpwffMZeSC5n47LOYp+58MmITOfidCfQxbU6VdrEUoXLwNbsvXddRsN/fpmOmaObaifz2X0nL7BAjDl4nH9CAlle/LfpsXRqH1sQ5d7RZUgSh4Nb4stKPXucVa4Tc+hDyHwcQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324109; c=relaxed/simple; bh=uUMJHqCxVT9ofhG3d/fUgp/JOjM1SGM0dfthTgoH290=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=E2/gnimHzvHdHd4kRh/Cj4SIyKG1S4eFGGGPn7Yq0CQ2pYNYl3V5gRBYKo8Jfsyaj6ZC5jXLgNK9qlYtU/Sme/T2M+4GFjYuujnKdbDdvQ3XLyvz0cu1tA2RM/7uljStVLSo7xd0JjJaQtLzjPhU15P0i46Tpx795HJeexi9mIw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=hUf6UoI8; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="hUf6UoI8" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 6261CC433C7; Sun, 24 Mar 2024 23:48:27 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324108; bh=uUMJHqCxVT9ofhG3d/fUgp/JOjM1SGM0dfthTgoH290=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=hUf6UoI8kwIb2Inw8PI2r114Y9ayw2wWdKisEaa0F91Bu8jqZ5dovGRbaRjF7uWJ8 CEJjYHjn8aI+bCnN/Vw1JbwdMyGktyO6swHt3Pyb8A8tV9q9jj4pSHhx0yTruXmzGU /P60GbPQ4OS4kXNMXiyjJ1mffAgWKdhOGglXzpC0ysPl/BQ0rzp2EMf7xrJqEBcqdd p6kat2XubrtfO5gSpM/XsIhmDslRm7C6KLRFJ/BuV/9v62K6w058nzx97gKfdZW4YS hkG9d7UEzC1KbKrQ0rd0kKxvercs/BxoC94Z4DoW1yGPoPyzISKgqQJuhDoOzFu6ec fqAV6qp0SoFYg== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Konrad Dybcio , Bryan O'Donoghue , Bjorn Andersson , Sasha Levin Subject: [PATCH 5.4 107/183] clk: qcom: reset: Commonize the de/assert functions Date: Sun, 24 Mar 2024 19:45:20 -0400 Message-ID: <20240324234638.1355609-108-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Konrad Dybcio [ Upstream commit eda40d9c583e95e0b6ac69d2950eec10f802e0e8 ] They do the same thing, except the last argument of the last function call differs. Commonize them. Reviewed-by: Bryan O'Donoghue Signed-off-by: Konrad Dybcio Link: https://lore.kernel.org/r/20240105-topic-venus_reset-v2-2-c37eba13b5c= e@linaro.org Signed-off-by: Bjorn Andersson Stable-dep-of: 2f8cf2c3f3e3 ("clk: qcom: reset: Ensure write completion on = reset de/assertion") Signed-off-by: Sasha Levin --- drivers/clk/qcom/reset.c | 22 +++++++++------------- 1 file changed, 9 insertions(+), 13 deletions(-) diff --git a/drivers/clk/qcom/reset.c b/drivers/clk/qcom/reset.c index 0e914ec7aeae1..338b1210c8f87 100644 --- a/drivers/clk/qcom/reset.c +++ b/drivers/clk/qcom/reset.c @@ -21,8 +21,8 @@ static int qcom_reset(struct reset_controller_dev *rcdev,= unsigned long id) return 0; } =20 -static int -qcom_reset_assert(struct reset_controller_dev *rcdev, unsigned long id) +static int qcom_reset_set_assert(struct reset_controller_dev *rcdev, + unsigned long id, bool assert) { struct qcom_reset_controller *rst; const struct qcom_reset_map *map; @@ -32,21 +32,17 @@ qcom_reset_assert(struct reset_controller_dev *rcdev, u= nsigned long id) map =3D &rst->reset_map[id]; mask =3D map->bitmask ? map->bitmask : BIT(map->bit); =20 - return regmap_update_bits(rst->regmap, map->reg, mask, mask); + return regmap_update_bits(rst->regmap, map->reg, mask, assert ? mask : 0); } =20 -static int -qcom_reset_deassert(struct reset_controller_dev *rcdev, unsigned long id) +static int qcom_reset_assert(struct reset_controller_dev *rcdev, unsigned = long id) { - struct qcom_reset_controller *rst; - const struct qcom_reset_map *map; - u32 mask; - - rst =3D to_qcom_reset_controller(rcdev); - map =3D &rst->reset_map[id]; - mask =3D map->bitmask ? map->bitmask : BIT(map->bit); + return qcom_reset_set_assert(rcdev, id, true); +} =20 - return regmap_update_bits(rst->regmap, map->reg, mask, 0); +static int qcom_reset_deassert(struct reset_controller_dev *rcdev, unsigne= d long id) +{ + return qcom_reset_set_assert(rcdev, id, false); } =20 const struct reset_control_ops qcom_reset_ops =3D { --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 46B31149DF5; Sun, 24 Mar 2024 23:48:29 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324109; cv=none; b=sYOowntQ0KnzrpZfINAeKm0xbaRXpfUe4vPTk8B1MPXVA0bxs+Vq+b78TSXe8SUObwimd7PYDCETSVU4iz+ui+zkg2PpHC53J53i+T6oiHtUDr71pLXm2xXlN2CtwMHbBpLvPj6eaY7WjlHYKT3PXqWVWOT1QSaAmpFndRdFX3k= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324109; c=relaxed/simple; bh=ecZIMq28dS5z5WXcLOYqbMa4zOh0Y+n31jjNNwg6oAQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=szW8sZF7Koi9PZmD0BrUvedgb9h8HLDcTAr1coMtQObK82JUknJDCbq7bP7N4YVqrC/mSAHPSXlRgVK1ALepc4OqGk05SsQzf4sRYn0pbt7cNIZ9ZIp86c3Nvn4Ntg9uNv+uo4Of+hrsk8IJUF2x0pJHiwJwE1OphymQPKz4twY= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=ugPNjafc; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="ugPNjafc" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 85147C433A6; Sun, 24 Mar 2024 23:48:28 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324109; bh=ecZIMq28dS5z5WXcLOYqbMa4zOh0Y+n31jjNNwg6oAQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=ugPNjafcJnPghIafwnz5KS/w+IJ6DtBrAchGO/6dQfQ77ukRnsxanHAm0x7K7u0jZ 8FRy70CfHIyTxMn5VT1gGO3e7ALffS4EFx/6G8Vr8ntGvZdGVZ0lRJHurcepGjhewO 87fbVJ0MP21FuZ0SP0aEsbyQAznufb9cd0q5TuVVAkAZj29md5hdach3O8t9TeT5LI 5KClVE5wUhM3bHcVQsMiw0L2YyKnfe2TfXG7+jXDLtwZLYfCszZYsgxF3mb7RfPs2G yEyPjNXBAA44gqaXHqPVV/GEoQyRQnhhgbA6PDpAdv+nYp0aXdPCIrKGRjT/G9ZYK+ V+WO0SeonkTLg== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Konrad Dybcio , Bjorn Andersson , Sasha Levin Subject: [PATCH 5.4 108/183] clk: qcom: reset: Ensure write completion on reset de/assertion Date: Sun, 24 Mar 2024 19:45:21 -0400 Message-ID: <20240324234638.1355609-109-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Konrad Dybcio [ Upstream commit 2f8cf2c3f3e3f7ef61bd19abb4b0bb797ad50aaf ] Trying to toggle the resets in a rapid fashion can lead to the changes not actually arriving at the clock controller block when we expect them to. This was observed at least on SM8250. Read back the value after regmap_update_bits to ensure write completion. Fixes: b36ba30c8ac6 ("clk: qcom: Add reset controller support") Signed-off-by: Konrad Dybcio Link: https://lore.kernel.org/r/20240105-topic-venus_reset-v2-3-c37eba13b5c= e@linaro.org Signed-off-by: Bjorn Andersson Signed-off-by: Sasha Levin --- drivers/clk/qcom/reset.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/drivers/clk/qcom/reset.c b/drivers/clk/qcom/reset.c index 338b1210c8f87..5a44dc8bd25f2 100644 --- a/drivers/clk/qcom/reset.c +++ b/drivers/clk/qcom/reset.c @@ -32,7 +32,12 @@ static int qcom_reset_set_assert(struct reset_controller= _dev *rcdev, map =3D &rst->reset_map[id]; mask =3D map->bitmask ? map->bitmask : BIT(map->bit); =20 - return regmap_update_bits(rst->regmap, map->reg, mask, assert ? mask : 0); + regmap_update_bits(rst->regmap, map->reg, mask, assert ? mask : 0); + + /* Read back the register to ensure write completion, ignore the value */ + regmap_read(rst->regmap, map->reg, &mask); + + return 0; } =20 static int qcom_reset_assert(struct reset_controller_dev *rcdev, unsigned = long id) --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 38DDB181499; Sun, 24 Mar 2024 23:48:30 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324111; cv=none; b=SU9voJ/bCtucBGUO1d1sItOkhz+50Ec14XMH/2AA7uSZ3JiDO7bTYiaTWXqjaUu23W/Lf+uwe5U+xEr6x1kOanx450IJEC22qAEjFSqSii2gBx6/xfbScpFNEX3J00E7HTwJEVvFJEpRVY5jPSIWpqtRqT6PWMzwUAZHXMjYAVE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324111; c=relaxed/simple; bh=Qmy2O76SxTVOnVSlPMGH7+wL9AlatR2WSG/HN+h72xI=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=E0oXFFp3Lc7GbNz0UhQ4yiyIIOXpSQymcqQ/VS4pG8QukCo6logTGlB/roAIQxjxeQJb4D6ahcpU/mJeIdOy1WyZ/K39F81+azLVJ8Tw+yK8WhwL0NjDHKkHFCS2zWExcj3ho7PDPyJE8RdUNa7dLVeQrc7AliuNZh1fTtAeo2M= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=ncXy0MI4; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="ncXy0MI4" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 6B9CAC43390; Sun, 24 Mar 2024 23:48:29 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324110; bh=Qmy2O76SxTVOnVSlPMGH7+wL9AlatR2WSG/HN+h72xI=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=ncXy0MI4thfY7AL5SIlrIr2yEJG6pR6CVmKHjJS6zTnA3m0nsncdLds8YYbh+XrJ0 X63a2F1cq7Je9oP9GSelWSCKepiwb+6haXxBpPkqJ95KOyFwRbn4B3oAhJF0GxG1Fg aDrd2g1X8FDSDDiSJZP+R3KQV0UzWsdexyJVvTtULYZ3QwkWMtLWVB1p8mesBgpeLy yGEN0M1X9vEitwrB+eQ7W/txyN6sRQq2r8Sl+1ZAV6VnNiAv0GgL8gnOHlg5OtlYDu Hr2D0THTijxbaf9rl5Oetx0ftn8J6tSQ1s5ot/u2jkTKwN0Km9SGVkQJyajQWKA5IJ R5D2nyShLG8GA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Baokun Li , Jan Kara , Sasha Levin Subject: [PATCH 5.4 109/183] quota: simplify drop_dquot_ref() Date: Sun, 24 Mar 2024 19:45:22 -0400 Message-ID: <20240324234638.1355609-110-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Baokun Li [ Upstream commit 7bce48f0fec602b3b6c335963b26d9eefa417788 ] As Honza said, remove_inode_dquot_ref() currently does not release the last dquot reference but instead adds the dquot to tofree_head list. This is because dqput() can sleep while dropping of the last dquot reference (writing back the dquot and calling ->release_dquot()) and that must not happen under dq_list_lock. Now that dqput() queues the final dquot cleanup into a workqueue, remove_inode_dquot_ref() can call dqput() unconditionally and we can significantly simplify it. Here we open code the simplified code of remove_inode_dquot_ref() into remove_dquot_ref() and remove the function put_dquot_list() which is no longer used. Signed-off-by: Baokun Li Signed-off-by: Jan Kara Message-Id: <20230630110822.3881712-6-libaokun1@huawei.com> Stable-dep-of: 179b8c97ebf6 ("quota: Fix rcu annotations of inode dquot poi= nters") Signed-off-by: Sasha Levin --- fs/quota/dquot.c | 70 +++++++----------------------------------------- 1 file changed, 9 insertions(+), 61 deletions(-) diff --git a/fs/quota/dquot.c b/fs/quota/dquot.c index d9da4a8c4317c..08ca5b1a5fba5 100644 --- a/fs/quota/dquot.c +++ b/fs/quota/dquot.c @@ -1075,59 +1075,7 @@ static int add_dquot_ref(struct super_block *sb, int= type) return err; } =20 -/* - * Remove references to dquots from inode and add dquot to list for freeing - * if we have the last reference to dquot - */ -static void remove_inode_dquot_ref(struct inode *inode, int type, - struct list_head *tofree_head) -{ - struct dquot **dquots =3D i_dquot(inode); - struct dquot *dquot =3D dquots[type]; - - if (!dquot) - return; - - dquots[type] =3D NULL; - if (list_empty(&dquot->dq_free)) { - /* - * The inode still has reference to dquot so it can't be in the - * free list - */ - spin_lock(&dq_list_lock); - list_add(&dquot->dq_free, tofree_head); - spin_unlock(&dq_list_lock); - } else { - /* - * Dquot is already in a list to put so we won't drop the last - * reference here. - */ - dqput(dquot); - } -} - -/* - * Free list of dquots - * Dquots are removed from inodes and no new references can be got so we a= re - * the only ones holding reference - */ -static void put_dquot_list(struct list_head *tofree_head) -{ - struct list_head *act_head; - struct dquot *dquot; - - act_head =3D tofree_head->next; - while (act_head !=3D tofree_head) { - dquot =3D list_entry(act_head, struct dquot, dq_free); - act_head =3D act_head->next; - /* Remove dquot from the list so we won't have problems... */ - list_del_init(&dquot->dq_free); - dqput(dquot); - } -} - -static void remove_dquot_ref(struct super_block *sb, int type, - struct list_head *tofree_head) +static void remove_dquot_ref(struct super_block *sb, int type) { struct inode *inode; #ifdef CONFIG_QUOTA_DEBUG @@ -1144,11 +1092,16 @@ static void remove_dquot_ref(struct super_block *sb= , int type, */ spin_lock(&dq_data_lock); if (!IS_NOQUOTA(inode)) { + struct dquot **dquots =3D i_dquot(inode); + struct dquot *dquot =3D dquots[type]; + #ifdef CONFIG_QUOTA_DEBUG if (unlikely(inode_get_rsv_space(inode) > 0)) reserved =3D 1; #endif - remove_inode_dquot_ref(inode, type, tofree_head); + dquots[type] =3D NULL; + if (dquot) + dqput(dquot); } spin_unlock(&dq_data_lock); } @@ -1165,13 +1118,8 @@ static void remove_dquot_ref(struct super_block *sb,= int type, /* Gather all references from inodes and drop them */ static void drop_dquot_ref(struct super_block *sb, int type) { - LIST_HEAD(tofree_head); - - if (sb->dq_op) { - remove_dquot_ref(sb, type, &tofree_head); - synchronize_srcu(&dquot_srcu); - put_dquot_list(&tofree_head); - } + if (sb->dq_op) + remove_dquot_ref(sb, type); } =20 static inline --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 5B2F7181B83; Sun, 24 Mar 2024 23:48:32 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324112; cv=none; b=Kp8EgtpxNh/7sbJimHmcuvx/iJm+IbPMTHOifQ9G1OdIp0wLFiv7D/VruzWi9SanRDbhTdyICzLZxGSW/Bs+oSEoNJTLg9PXlqjHOImZSuZrlWhpob2gdaF3I9Ttt1b0f0ejYsIoKeJ79yYuRyIoQ8RC52IJjoUWByxV4yPk+ws= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324112; c=relaxed/simple; bh=qNqAGtLwXNiS9Ra6AR09/nPEqcCAnmZzzdTSwtorYhs=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=iczvDsH5xejQAUNLmsXlTNPorXBawqqzgQtnk5ebrOY0uGfP9P4DrCK6K6rjugpkVtSjY5JodGbxrtGcAhozRJ45GSJIz3Y+ChOCUiOhp4ucLgipmeDX1rDLC9t5Zprka3eqx9ztbbqcXwxpZSIXzmVnHOhfkAhXBhp/eClauW4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=k4yVcBEO; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="k4yVcBEO" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 63C13C433F1; Sun, 24 Mar 2024 23:48:30 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324111; bh=qNqAGtLwXNiS9Ra6AR09/nPEqcCAnmZzzdTSwtorYhs=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=k4yVcBEOCEm+ZljRnWm0vL0RLahKRyOHWUXSn4FFdF3+n/tlGO4MboKpvdUr1LIJa o6wE0m+BqpeC8pWtAYfu3lPezSOL2+W/uX4vwgAodyKI+vkMtzdlne0vlMrlCzkqC1 12BftZ04ZSpUbJNv7UdFOvWlVWQMoc6XJqtBXTeqXahjae8XV2Zp/X5/04LvTyJxRK vpLmD8wqGFMl4xdqHKQYJWQUUyYQTDFiXTu0hVA3ODdsFZxi3MGzd7OeZ0MLrO+EOm 9yhWFR8NhmYjkqE3jeQB4WogKnU070+N3XloWzxuMx38R9ruzpQvAlzwt/gy1t4uXj h6755fxYGQq0w== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Wang Jianjian , Jan Kara , Sasha Levin Subject: [PATCH 5.4 110/183] quota: Fix potential NULL pointer dereference Date: Sun, 24 Mar 2024 19:45:23 -0400 Message-ID: <20240324234638.1355609-111-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Wang Jianjian [ Upstream commit d0aa72604fbd80c8aabb46eda00535ed35570f1f ] Below race may cause NULL pointer dereference P1 P2 dquot_free_inode quota_off drop_dquot_ref remove_dquot_ref dquots =3D i_dquot(inode) dquots =3D i_dquot(inode) srcu_read_lock dquots[cnt]) !=3D NULL (1) dquots[type] =3D NULL (2) spin_lock(&dquots[cnt]->dq_dqb_lock) (3) .... If dquot_free_inode(or other routines) checks inode's quota pointers (1) before quota_off sets it to NULL(2) and use it (3) after that, NULL pointer dereference will be triggered. So let's fix it by using a temporary pointer to avoid this issue. Signed-off-by: Wang Jianjian Signed-off-by: Jan Kara Message-Id: <20240202081852.2514092-1-wangjianjian3@huawei.com> Stable-dep-of: 179b8c97ebf6 ("quota: Fix rcu annotations of inode dquot poi= nters") Signed-off-by: Sasha Levin --- fs/quota/dquot.c | 98 ++++++++++++++++++++++++++++-------------------- 1 file changed, 57 insertions(+), 41 deletions(-) diff --git a/fs/quota/dquot.c b/fs/quota/dquot.c index 08ca5b1a5fba5..c4726a1895582 100644 --- a/fs/quota/dquot.c +++ b/fs/quota/dquot.c @@ -399,15 +399,17 @@ int dquot_mark_dquot_dirty(struct dquot *dquot) EXPORT_SYMBOL(dquot_mark_dquot_dirty); =20 /* Dirtify all the dquots - this can block when journalling */ -static inline int mark_all_dquot_dirty(struct dquot * const *dquot) +static inline int mark_all_dquot_dirty(struct dquot * const *dquots) { int ret, err, cnt; + struct dquot *dquot; =20 ret =3D err =3D 0; for (cnt =3D 0; cnt < MAXQUOTAS; cnt++) { - if (dquot[cnt]) + dquot =3D srcu_dereference(dquots[cnt], &dquot_srcu); + if (dquot) /* Even in case of error we have to continue */ - ret =3D mark_dquot_dirty(dquot[cnt]); + ret =3D mark_dquot_dirty(dquot); if (!err) err =3D ret; } @@ -1675,6 +1677,7 @@ int __dquot_alloc_space(struct inode *inode, qsize_t = number, int flags) struct dquot_warn warn[MAXQUOTAS]; int reserve =3D flags & DQUOT_SPACE_RESERVE; struct dquot **dquots; + struct dquot *dquot; =20 if (!inode_quota_active(inode)) { if (reserve) { @@ -1694,27 +1697,26 @@ int __dquot_alloc_space(struct inode *inode, qsize_= t number, int flags) index =3D srcu_read_lock(&dquot_srcu); spin_lock(&inode->i_lock); for (cnt =3D 0; cnt < MAXQUOTAS; cnt++) { - if (!dquots[cnt]) + dquot =3D srcu_dereference(dquots[cnt], &dquot_srcu); + if (!dquot) continue; if (reserve) { - ret =3D dquot_add_space(dquots[cnt], 0, number, flags, - &warn[cnt]); + ret =3D dquot_add_space(dquot, 0, number, flags, &warn[cnt]); } else { - ret =3D dquot_add_space(dquots[cnt], number, 0, flags, - &warn[cnt]); + ret =3D dquot_add_space(dquot, number, 0, flags, &warn[cnt]); } if (ret) { /* Back out changes we already did */ for (cnt--; cnt >=3D 0; cnt--) { - if (!dquots[cnt]) + dquot =3D srcu_dereference(dquots[cnt], &dquot_srcu); + if (!dquot) continue; - spin_lock(&dquots[cnt]->dq_dqb_lock); + spin_lock(&dquot->dq_dqb_lock); if (reserve) - dquot_free_reserved_space(dquots[cnt], - number); + dquot_free_reserved_space(dquot, number); else - dquot_decr_space(dquots[cnt], number); - spin_unlock(&dquots[cnt]->dq_dqb_lock); + dquot_decr_space(dquot, number); + spin_unlock(&dquot->dq_dqb_lock); } spin_unlock(&inode->i_lock); goto out_flush_warn; @@ -1745,6 +1747,7 @@ int dquot_alloc_inode(struct inode *inode) int cnt, ret =3D 0, index; struct dquot_warn warn[MAXQUOTAS]; struct dquot * const *dquots; + struct dquot *dquot; =20 if (!inode_quota_active(inode)) return 0; @@ -1755,17 +1758,19 @@ int dquot_alloc_inode(struct inode *inode) index =3D srcu_read_lock(&dquot_srcu); spin_lock(&inode->i_lock); for (cnt =3D 0; cnt < MAXQUOTAS; cnt++) { - if (!dquots[cnt]) + dquot =3D srcu_dereference(dquots[cnt], &dquot_srcu); + if (!dquot) continue; - ret =3D dquot_add_inodes(dquots[cnt], 1, &warn[cnt]); + ret =3D dquot_add_inodes(dquot, 1, &warn[cnt]); if (ret) { for (cnt--; cnt >=3D 0; cnt--) { - if (!dquots[cnt]) + dquot =3D srcu_dereference(dquots[cnt], &dquot_srcu); + if (!dquot) continue; /* Back out changes we already did */ - spin_lock(&dquots[cnt]->dq_dqb_lock); - dquot_decr_inodes(dquots[cnt], 1); - spin_unlock(&dquots[cnt]->dq_dqb_lock); + spin_lock(&dquot->dq_dqb_lock); + dquot_decr_inodes(dquot, 1); + spin_unlock(&dquot->dq_dqb_lock); } goto warn_put_all; } @@ -1787,6 +1792,7 @@ EXPORT_SYMBOL(dquot_alloc_inode); int dquot_claim_space_nodirty(struct inode *inode, qsize_t number) { struct dquot **dquots; + struct dquot *dquot; int cnt, index; =20 if (!inode_quota_active(inode)) { @@ -1802,9 +1808,8 @@ int dquot_claim_space_nodirty(struct inode *inode, qs= ize_t number) spin_lock(&inode->i_lock); /* Claim reserved quotas to allocated quotas */ for (cnt =3D 0; cnt < MAXQUOTAS; cnt++) { - if (dquots[cnt]) { - struct dquot *dquot =3D dquots[cnt]; - + dquot =3D srcu_dereference(dquots[cnt], &dquot_srcu); + if (dquot) { spin_lock(&dquot->dq_dqb_lock); if (WARN_ON_ONCE(dquot->dq_dqb.dqb_rsvspace < number)) number =3D dquot->dq_dqb.dqb_rsvspace; @@ -1829,6 +1834,7 @@ EXPORT_SYMBOL(dquot_claim_space_nodirty); void dquot_reclaim_space_nodirty(struct inode *inode, qsize_t number) { struct dquot **dquots; + struct dquot *dquot; int cnt, index; =20 if (!inode_quota_active(inode)) { @@ -1844,9 +1850,8 @@ void dquot_reclaim_space_nodirty(struct inode *inode,= qsize_t number) spin_lock(&inode->i_lock); /* Claim reserved quotas to allocated quotas */ for (cnt =3D 0; cnt < MAXQUOTAS; cnt++) { - if (dquots[cnt]) { - struct dquot *dquot =3D dquots[cnt]; - + dquot =3D srcu_dereference(dquots[cnt], &dquot_srcu); + if (dquot) { spin_lock(&dquot->dq_dqb_lock); if (WARN_ON_ONCE(dquot->dq_dqb.dqb_curspace < number)) number =3D dquot->dq_dqb.dqb_curspace; @@ -1873,6 +1878,7 @@ void __dquot_free_space(struct inode *inode, qsize_t = number, int flags) unsigned int cnt; struct dquot_warn warn[MAXQUOTAS]; struct dquot **dquots; + struct dquot *dquot; int reserve =3D flags & DQUOT_SPACE_RESERVE, index; =20 if (!inode_quota_active(inode)) { @@ -1893,17 +1899,18 @@ void __dquot_free_space(struct inode *inode, qsize_= t number, int flags) int wtype; =20 warn[cnt].w_type =3D QUOTA_NL_NOWARN; - if (!dquots[cnt]) + dquot =3D srcu_dereference(dquots[cnt], &dquot_srcu); + if (!dquot) continue; - spin_lock(&dquots[cnt]->dq_dqb_lock); - wtype =3D info_bdq_free(dquots[cnt], number); + spin_lock(&dquot->dq_dqb_lock); + wtype =3D info_bdq_free(dquot, number); if (wtype !=3D QUOTA_NL_NOWARN) - prepare_warning(&warn[cnt], dquots[cnt], wtype); + prepare_warning(&warn[cnt], dquot, wtype); if (reserve) - dquot_free_reserved_space(dquots[cnt], number); + dquot_free_reserved_space(dquot, number); else - dquot_decr_space(dquots[cnt], number); - spin_unlock(&dquots[cnt]->dq_dqb_lock); + dquot_decr_space(dquot, number); + spin_unlock(&dquot->dq_dqb_lock); } if (reserve) *inode_reserved_space(inode) -=3D number; @@ -1928,6 +1935,7 @@ void dquot_free_inode(struct inode *inode) unsigned int cnt; struct dquot_warn warn[MAXQUOTAS]; struct dquot * const *dquots; + struct dquot *dquot; int index; =20 if (!inode_quota_active(inode)) @@ -1938,16 +1946,16 @@ void dquot_free_inode(struct inode *inode) spin_lock(&inode->i_lock); for (cnt =3D 0; cnt < MAXQUOTAS; cnt++) { int wtype; - warn[cnt].w_type =3D QUOTA_NL_NOWARN; - if (!dquots[cnt]) + dquot =3D srcu_dereference(dquots[cnt], &dquot_srcu); + if (!dquot) continue; - spin_lock(&dquots[cnt]->dq_dqb_lock); - wtype =3D info_idq_free(dquots[cnt], 1); + spin_lock(&dquot->dq_dqb_lock); + wtype =3D info_idq_free(dquot, 1); if (wtype !=3D QUOTA_NL_NOWARN) - prepare_warning(&warn[cnt], dquots[cnt], wtype); - dquot_decr_inodes(dquots[cnt], 1); - spin_unlock(&dquots[cnt]->dq_dqb_lock); + prepare_warning(&warn[cnt], dquot, wtype); + dquot_decr_inodes(dquot, 1); + spin_unlock(&dquot->dq_dqb_lock); } spin_unlock(&inode->i_lock); mark_all_dquot_dirty(dquots); @@ -1974,7 +1982,7 @@ int __dquot_transfer(struct inode *inode, struct dquo= t **transfer_to) qsize_t rsv_space =3D 0; qsize_t inode_usage =3D 1; struct dquot *transfer_from[MAXQUOTAS] =3D {}; - int cnt, ret =3D 0; + int cnt, index, ret =3D 0; char is_valid[MAXQUOTAS] =3D {}; struct dquot_warn warn_to[MAXQUOTAS]; struct dquot_warn warn_from_inodes[MAXQUOTAS]; @@ -2063,8 +2071,16 @@ int __dquot_transfer(struct inode *inode, struct dqu= ot **transfer_to) spin_unlock(&inode->i_lock); spin_unlock(&dq_data_lock); =20 + /* + * These arrays are local and we hold dquot references so we don't need + * the srcu protection but still take dquot_srcu to avoid warning in + * mark_all_dquot_dirty(). + */ + index =3D srcu_read_lock(&dquot_srcu); mark_all_dquot_dirty(transfer_from); mark_all_dquot_dirty(transfer_to); + srcu_read_unlock(&dquot_srcu, index); + flush_warnings(warn_to); flush_warnings(warn_from_inodes); flush_warnings(warn_from_space); --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 08C42181B91; Sun, 24 Mar 2024 23:48:33 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324114; cv=none; b=UECGHeTre0JIbAVChfr87x1Yv9waqHmCgdLyLzs3xS0J1xZZfe4+PSWLOnfMKOGCyZBvB7ClHzYYEKX+Hpge/C13/cw5WRLZOVcfBTejcIEIhF0xlbbAgzUCBV4dwy/Z8F5DrNxzCH7KspWJPiFHp8SjCm8qc20ftEeskzzYIo0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324114; c=relaxed/simple; bh=x1NtUxseTfEcrQF83Qqi+L2VnzDZc8ZkZ64G2ZdZTfc=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=pnWmQAJPmdVjNQWWFnr2PuwLiSSoQQnA9HqGFEn0PSxZqpzWYG+BDbYildPNtKyyHn39HS6ZP97hBWKlEHRYDoxqk18bI6QGeXbbejG5UYQmOA4io3ZQm9x4llCvB6qWcV8zGuWb2UBLt+7ldRdx7IJlZvUqL+SK6yIohi0kPrk= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=j5On6cya; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="j5On6cya" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 302CFC43141; Sun, 24 Mar 2024 23:48:32 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324112; bh=x1NtUxseTfEcrQF83Qqi+L2VnzDZc8ZkZ64G2ZdZTfc=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=j5On6cyaIp+2wLOOjncBK3QT6ZrzCgQOR2xpbQIOeZeeyQkLFys1YUoLJFQGA5x0Y IO8SsMBVfqpaVPA6OCqFNWflZ2ryLRLTGT+EhVNgvoPZAFnm/ucryL+XQ3QfE0fxAP TMrh4aC8DEnAAcDWeP6DX44XGWppg6QGTzws0rSJ4lEudjmwGmoiszJpRKoyPCq2Js uxQKVGW7PhMnAaqmOIWx9ozCHv/LkOoJlqLQCAkGJhew9LTgAxpjtFkykRMV0WR6Da hHaK/zTkhbXWZ8OC8Zu67+W7EaW2RHuuau6+SQzTK0qk/c7dsaEB0uHVxp1eqLPPQE bmRiS4c+FUfNQ== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Jan Kara , kernel test robot , Sasha Levin Subject: [PATCH 5.4 111/183] quota: Fix rcu annotations of inode dquot pointers Date: Sun, 24 Mar 2024 19:45:24 -0400 Message-ID: <20240324234638.1355609-112-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Jan Kara [ Upstream commit 179b8c97ebf63429589f5afeba59a181fe70603e ] Dquot pointers in i_dquot array in the inode are protected by dquot_srcu. Annotate the array pointers with __rcu, perform the locked dereferences with srcu_dereference_check() instead of plain reads, and set the array elements with rcu_assign_pointer(). Fixes: b9ba6f94b238 ("quota: remove dqptr_sem") Reported-by: kernel test robot Closes: https://lore.kernel.org/oe-kbuild-all/202402061900.rTuYDlo6-lkp@int= el.com/ Signed-off-by: Jan Kara Signed-off-by: Sasha Levin --- fs/quota/dquot.c | 66 ++++++++++++++++++++++++++++-------------------- 1 file changed, 39 insertions(+), 27 deletions(-) diff --git a/fs/quota/dquot.c b/fs/quota/dquot.c index c4726a1895582..a7ddb874912d4 100644 --- a/fs/quota/dquot.c +++ b/fs/quota/dquot.c @@ -399,7 +399,7 @@ int dquot_mark_dquot_dirty(struct dquot *dquot) EXPORT_SYMBOL(dquot_mark_dquot_dirty); =20 /* Dirtify all the dquots - this can block when journalling */ -static inline int mark_all_dquot_dirty(struct dquot * const *dquots) +static inline int mark_all_dquot_dirty(struct dquot __rcu * const *dquots) { int ret, err, cnt; struct dquot *dquot; @@ -997,14 +997,15 @@ struct dquot *dqget(struct super_block *sb, struct kq= id qid) } EXPORT_SYMBOL(dqget); =20 -static inline struct dquot **i_dquot(struct inode *inode) +static inline struct dquot __rcu **i_dquot(struct inode *inode) { - return inode->i_sb->s_op->get_dquots(inode); + /* Force __rcu for now until filesystems are fixed */ + return (struct dquot __rcu **)inode->i_sb->s_op->get_dquots(inode); } =20 static int dqinit_needed(struct inode *inode, int type) { - struct dquot * const *dquots; + struct dquot __rcu * const *dquots; int cnt; =20 if (IS_NOQUOTA(inode)) @@ -1094,14 +1095,16 @@ static void remove_dquot_ref(struct super_block *sb= , int type) */ spin_lock(&dq_data_lock); if (!IS_NOQUOTA(inode)) { - struct dquot **dquots =3D i_dquot(inode); - struct dquot *dquot =3D dquots[type]; + struct dquot __rcu **dquots =3D i_dquot(inode); + struct dquot *dquot =3D srcu_dereference_check( + dquots[type], &dquot_srcu, + lockdep_is_held(&dq_data_lock)); =20 #ifdef CONFIG_QUOTA_DEBUG if (unlikely(inode_get_rsv_space(inode) > 0)) reserved =3D 1; #endif - dquots[type] =3D NULL; + rcu_assign_pointer(dquots[type], NULL); if (dquot) dqput(dquot); } @@ -1454,7 +1457,8 @@ static int inode_quota_active(const struct inode *ino= de) static int __dquot_initialize(struct inode *inode, int type) { int cnt, init_needed =3D 0; - struct dquot **dquots, *got[MAXQUOTAS] =3D {}; + struct dquot __rcu **dquots; + struct dquot *got[MAXQUOTAS] =3D {}; struct super_block *sb =3D inode->i_sb; qsize_t rsv; int ret =3D 0; @@ -1529,7 +1533,7 @@ static int __dquot_initialize(struct inode *inode, in= t type) if (!got[cnt]) continue; if (!dquots[cnt]) { - dquots[cnt] =3D got[cnt]; + rcu_assign_pointer(dquots[cnt], got[cnt]); got[cnt] =3D NULL; /* * Make quota reservation system happy if someone @@ -1537,12 +1541,16 @@ static int __dquot_initialize(struct inode *inode, = int type) */ rsv =3D inode_get_rsv_space(inode); if (unlikely(rsv)) { + struct dquot *dquot =3D srcu_dereference_check( + dquots[cnt], &dquot_srcu, + lockdep_is_held(&dq_data_lock)); + spin_lock(&inode->i_lock); /* Get reservation again under proper lock */ rsv =3D __inode_get_rsv_space(inode); - spin_lock(&dquots[cnt]->dq_dqb_lock); - dquots[cnt]->dq_dqb.dqb_rsvspace +=3D rsv; - spin_unlock(&dquots[cnt]->dq_dqb_lock); + spin_lock(&dquot->dq_dqb_lock); + dquot->dq_dqb.dqb_rsvspace +=3D rsv; + spin_unlock(&dquot->dq_dqb_lock); spin_unlock(&inode->i_lock); } } @@ -1564,7 +1572,7 @@ EXPORT_SYMBOL(dquot_initialize); =20 bool dquot_initialize_needed(struct inode *inode) { - struct dquot **dquots; + struct dquot __rcu **dquots; int i; =20 if (!inode_quota_active(inode)) @@ -1589,13 +1597,14 @@ EXPORT_SYMBOL(dquot_initialize_needed); static void __dquot_drop(struct inode *inode) { int cnt; - struct dquot **dquots =3D i_dquot(inode); + struct dquot __rcu **dquots =3D i_dquot(inode); struct dquot *put[MAXQUOTAS]; =20 spin_lock(&dq_data_lock); for (cnt =3D 0; cnt < MAXQUOTAS; cnt++) { - put[cnt] =3D dquots[cnt]; - dquots[cnt] =3D NULL; + put[cnt] =3D srcu_dereference_check(dquots[cnt], &dquot_srcu, + lockdep_is_held(&dq_data_lock)); + rcu_assign_pointer(dquots[cnt], NULL); } spin_unlock(&dq_data_lock); dqput_all(put); @@ -1603,7 +1612,7 @@ static void __dquot_drop(struct inode *inode) =20 void dquot_drop(struct inode *inode) { - struct dquot * const *dquots; + struct dquot __rcu * const *dquots; int cnt; =20 if (IS_NOQUOTA(inode)) @@ -1676,7 +1685,7 @@ int __dquot_alloc_space(struct inode *inode, qsize_t = number, int flags) int cnt, ret =3D 0, index; struct dquot_warn warn[MAXQUOTAS]; int reserve =3D flags & DQUOT_SPACE_RESERVE; - struct dquot **dquots; + struct dquot __rcu **dquots; struct dquot *dquot; =20 if (!inode_quota_active(inode)) { @@ -1746,7 +1755,7 @@ int dquot_alloc_inode(struct inode *inode) { int cnt, ret =3D 0, index; struct dquot_warn warn[MAXQUOTAS]; - struct dquot * const *dquots; + struct dquot __rcu * const *dquots; struct dquot *dquot; =20 if (!inode_quota_active(inode)) @@ -1791,7 +1800,7 @@ EXPORT_SYMBOL(dquot_alloc_inode); */ int dquot_claim_space_nodirty(struct inode *inode, qsize_t number) { - struct dquot **dquots; + struct dquot __rcu **dquots; struct dquot *dquot; int cnt, index; =20 @@ -1833,7 +1842,7 @@ EXPORT_SYMBOL(dquot_claim_space_nodirty); */ void dquot_reclaim_space_nodirty(struct inode *inode, qsize_t number) { - struct dquot **dquots; + struct dquot __rcu **dquots; struct dquot *dquot; int cnt, index; =20 @@ -1877,7 +1886,7 @@ void __dquot_free_space(struct inode *inode, qsize_t = number, int flags) { unsigned int cnt; struct dquot_warn warn[MAXQUOTAS]; - struct dquot **dquots; + struct dquot __rcu **dquots; struct dquot *dquot; int reserve =3D flags & DQUOT_SPACE_RESERVE, index; =20 @@ -1934,7 +1943,7 @@ void dquot_free_inode(struct inode *inode) { unsigned int cnt; struct dquot_warn warn[MAXQUOTAS]; - struct dquot * const *dquots; + struct dquot __rcu * const *dquots; struct dquot *dquot; int index; =20 @@ -1981,6 +1990,7 @@ int __dquot_transfer(struct inode *inode, struct dquo= t **transfer_to) qsize_t cur_space; qsize_t rsv_space =3D 0; qsize_t inode_usage =3D 1; + struct dquot __rcu **dquots; struct dquot *transfer_from[MAXQUOTAS] =3D {}; int cnt, index, ret =3D 0; char is_valid[MAXQUOTAS] =3D {}; @@ -2013,6 +2023,7 @@ int __dquot_transfer(struct inode *inode, struct dquo= t **transfer_to) } cur_space =3D __inode_get_bytes(inode); rsv_space =3D __inode_get_rsv_space(inode); + dquots =3D i_dquot(inode); /* * Build the transfer_from list, check limits, and update usage in * the target structures. @@ -2027,7 +2038,8 @@ int __dquot_transfer(struct inode *inode, struct dquo= t **transfer_to) if (!sb_has_quota_active(inode->i_sb, cnt)) continue; is_valid[cnt] =3D 1; - transfer_from[cnt] =3D i_dquot(inode)[cnt]; + transfer_from[cnt] =3D srcu_dereference_check(dquots[cnt], + &dquot_srcu, lockdep_is_held(&dq_data_lock)); ret =3D dquot_add_inodes(transfer_to[cnt], inode_usage, &warn_to[cnt]); if (ret) @@ -2066,7 +2078,7 @@ int __dquot_transfer(struct inode *inode, struct dquo= t **transfer_to) rsv_space); spin_unlock(&transfer_from[cnt]->dq_dqb_lock); } - i_dquot(inode)[cnt] =3D transfer_to[cnt]; + rcu_assign_pointer(dquots[cnt], transfer_to[cnt]); } spin_unlock(&inode->i_lock); spin_unlock(&dq_data_lock); @@ -2077,8 +2089,8 @@ int __dquot_transfer(struct inode *inode, struct dquo= t **transfer_to) * mark_all_dquot_dirty(). */ index =3D srcu_read_lock(&dquot_srcu); - mark_all_dquot_dirty(transfer_from); - mark_all_dquot_dirty(transfer_to); + mark_all_dquot_dirty((struct dquot __rcu **)transfer_from); + mark_all_dquot_dirty((struct dquot __rcu **)transfer_to); srcu_read_unlock(&dquot_srcu, index); =20 flush_warnings(warn_to); --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id F1FBE181B90; Sun, 24 Mar 2024 23:48:33 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324114; cv=none; b=KYQTxg0kFLNxGAH0moM06Lyb4I6Xy5D0YsUt2/U14t5ThmqcXhvMSTtQ09aEn9FM/5wXWZoRE85B/aT3NF/zvjCAUPRLPg2mGsdJq/Cb8TKIxNDQJq0cEoB96ahcywx6f3pSPCmHgRYaEtnNbC9zINCFUGGg8+bges1mUao8/Pg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324114; c=relaxed/simple; bh=tVb2DaertyoHviz3jSJZK0KQO3vS7370E6vkFxCRL60=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=L1/cfXU8/7CIcY5HyyI/UgRuEZ8BPMYGzmvLCyM5tvrHAoyz/W0YppyfQzfCQy1ToAYqvTiaO+bRzPvwF52L4bUngjL0C20KTH10+xWmfHmcxwyozuKNdkF6PGvG0rpb6b+MvmfVl0BabDw62S/RecWdaI6HqFjHO2Op1oLcGjM= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=Yl1Nnebd; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="Yl1Nnebd" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 2CE7BC43394; Sun, 24 Mar 2024 23:48:33 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324113; bh=tVb2DaertyoHviz3jSJZK0KQO3vS7370E6vkFxCRL60=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Yl1NnebdjBYddswj39RhGuLk9OG93o+FXPmzmuycq4g+9Y39VVHOP000lCOXecEFS zosihZl2WmrKzM7UA6eaaah0BPDtitubA0/fkfO+DRB5Mgn+nrWZUKklWInVGtPSCo 6bPaJ20Dh6DidKhcWdjeraEFz+rEe0FMTZdNmHJiMGxYuznFY55/SwIf90denlF7Ul 8G3HKzMiQn8+M+btk6LRxQp0FjiIRNpmSqyOCX4mNYPC0Sz34Vv9EsQLoMuuCDenoJ EI9M1YEmdI5zZ9lRf1yJRFvWGPOnge+Ai/3fj9HA+m67iAFFmNSqJ5Q/LEiW5d/5PZ FSXe2cyKB5WeA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Christophe JAILLET , Bjorn Helgaas , Sasha Levin Subject: [PATCH 5.4 112/183] PCI: switchtec: Fix an error handling path in switchtec_pci_probe() Date: Sun, 24 Mar 2024 19:45:25 -0400 Message-ID: <20240324234638.1355609-113-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Christophe JAILLET [ Upstream commit dec529b0b0572b32f9eb91c882dd1f08ca657efb ] The commit in Fixes changed the logic on how resources are released and introduced a new switchtec_exit_pci() that need to be called explicitly in order to undo a corresponding switchtec_init_pci(). This was done in the remove function, but not in the probe. Fix the probe now. Fixes: df25461119d9 ("PCI: switchtec: Fix stdev_release() crash after surpr= ise hot remove") Link: https://lore.kernel.org/r/01446d2ccb91a578239915812f2b7dfbeb2882af.17= 03428183.git.christophe.jaillet@wanadoo.fr Signed-off-by: Christophe JAILLET Signed-off-by: Bjorn Helgaas Signed-off-by: Sasha Levin --- drivers/pci/switch/switchtec.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/pci/switch/switchtec.c b/drivers/pci/switch/switchtec.c index 0037f368f62b9..0b83252358527 100644 --- a/drivers/pci/switch/switchtec.c +++ b/drivers/pci/switch/switchtec.c @@ -1433,7 +1433,7 @@ static int switchtec_pci_probe(struct pci_dev *pdev, rc =3D switchtec_init_isr(stdev); if (rc) { dev_err(&stdev->dev, "failed to init isr.\n"); - goto err_put; + goto err_exit_pci; } =20 iowrite32(SWITCHTEC_EVENT_CLEAR | @@ -1454,6 +1454,8 @@ static int switchtec_pci_probe(struct pci_dev *pdev, =20 err_devadd: stdev_kill(stdev); +err_exit_pci: + switchtec_exit_pci(stdev); err_put: ida_simple_remove(&switchtec_minor_ida, MINOR(stdev->dev.devt)); put_device(&stdev->dev); --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id E3454181B8E; Sun, 24 Mar 2024 23:48:34 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324116; cv=none; b=GsUGrEQsozKDkhJcWZsU93KAkF14NZ7nrnRKkN/S421HrcRrY7nG7wrC/RIN/2i8ubfdNA4w4LQHftDes3tRvvxAnPHxosSbyLgUlN0IerIpXR9PKvedCO17wQxZUm/VEe7H+bTWh9exexocKpNQk3BEFktDEjW4Qo0occQI1dA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324116; c=relaxed/simple; bh=ch4msB6QbAfyxOHVuIwLakn8UTa3SdoazWxzYOmU5xY=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=pjiw05bMWz67gNe+3Jkwvh+2bk0XYAYkvgtbBgueWasyMMD7V7hCOqDgSJ7IezuW3zk7h/GbWlzHHppOk6zGdpvGKkk71LtM/UBX76oJ91E0uzaWDogrYqpx9JX2iSBqwMnMbvnW+DPPgvllEAYL79/RVIHgsasNx5ZacZcKXJc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=RO6UHQW8; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="RO6UHQW8" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 13589C43390; Sun, 24 Mar 2024 23:48:33 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324114; bh=ch4msB6QbAfyxOHVuIwLakn8UTa3SdoazWxzYOmU5xY=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=RO6UHQW8+83koF5R/hPr26UZj4BbpxSxzL57T0niPnjzuzEWe/PSwhnK/cu57q6BJ qZ26yxB5wYhecDaH2eNOz7Qw9Lp4rKyr97E0zenhpHzMdKEDA/vQbfCtTRk8yXR56R LEyoB3w879CIDJ7kE96Pj6RSU/tM4rX7Xa17mBKBS8a3SdFlqobdgnuZNpGV7kHedr QjKfko7UMERUzTUmRl5m9RmE930Fie8TLhinoEAVL4+OKvm2nzLuA9ipmwDWUNL41r 5FLdIUxBgu8KFOkPvbYw420pqqzGNbENEtQHS2R3UyMeLlL64OfHHYnB7nalGDMUNf hkIh3iAftaE4w== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Yang Jihong , Arnaldo Carvalho de Melo , Namhyung Kim , Sasha Levin Subject: [PATCH 5.4 113/183] perf thread_map: Free strlist on normal path in thread_map__new_by_tid_str() Date: Sun, 24 Mar 2024 19:45:26 -0400 Message-ID: <20240324234638.1355609-114-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Yang Jihong [ Upstream commit 1eb3d924e3c0b8c27388b0583a989d757866efb6 ] slist needs to be freed in both error path and normal path in thread_map__new_by_tid_str(). Fixes: b52956c961be3a04 ("perf tools: Allow multiple threads or processes i= n record, stat, top") Reviewed-by: Arnaldo Carvalho de Melo Signed-off-by: Yang Jihong Signed-off-by: Namhyung Kim Link: https://lore.kernel.org/r/20240206083228.172607-6-yangjihong1@huawei.= com Signed-off-by: Sasha Levin --- tools/perf/util/thread_map.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/perf/util/thread_map.c b/tools/perf/util/thread_map.c index c9bfe4696943b..cee7fc3b5bb0c 100644 --- a/tools/perf/util/thread_map.c +++ b/tools/perf/util/thread_map.c @@ -279,13 +279,13 @@ struct perf_thread_map *thread_map__new_by_tid_str(co= nst char *tid_str) threads->nr =3D ntasks; } out: + strlist__delete(slist); if (threads) refcount_set(&threads->refcnt, 1); return threads; =20 out_free_threads: zfree(&threads); - strlist__delete(slist); goto out; } =20 --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id CDC8E181B9E; Sun, 24 Mar 2024 23:48:35 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324116; cv=none; b=XvcpjBs+HjHtB0Ap9SB7djQp69Xsw3BXaJhut3y38kD+GnHV9hJ1C9vCTU+sImwsa01iCaHgZZfaPN3b0EvwiFK0sF4bDTNSXlNqgi+KNUIPM6z9GLGM9fHdKL8MsGAq3jUXITw1j2NkUKllQ07cK+1zy6PZMYWEQXtXjVff9I8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324116; c=relaxed/simple; bh=u0e++ePWbuatnqhuMRpq9QLbdz3k9Keaoa75jKdDe04=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=tw6D2hdnuHKrzrTK/mV+/7d52wkB6ZHkJBh9VoVnavXgFqdBL8+hO+pvmKMQEOBThA8gjbUnFpQqwib/2hHfYX9VEjRzRoCksHMV2BikcH+pDpa67VKIobw0TtV8fDAo+TwHqTBvvuMLdS3YmGg3rcFtGL4WR9Q5/oKfNs8oLig= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=fmTX5IEM; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="fmTX5IEM" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 130E9C433C7; Sun, 24 Mar 2024 23:48:34 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324115; bh=u0e++ePWbuatnqhuMRpq9QLbdz3k9Keaoa75jKdDe04=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=fmTX5IEMYg2o2ANHBX1Y/V231rfA03/cCOeRZw9wueY/PAUzapINZQt6ggz4P+CXb iyuDPoV9D11vE0xt/POOYiyC7F6oSwbE5thJJLUIDxb1L47no+6XWxsrFWt/HDLusV z1fhhzs2dHs+eqeEX2y+g0JCHAdIxec0ick3Fa+f1UpTVzS4fxxghUa/qxuzVOpNab qMwL2jPF4KVspDUbno5k67g7PyUhAmhMRPWbFTkh5cdqOFo1ywId54u1nmpUhH6aeU 2lUje+fXlTPnY88HVWJ0ysUHjcPsNcVWkarfE2464bGuGmeTyg6UBaCA7BlMTUicBb 8NdUWIA465yAg== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Nikita Zhandarovich , Alex Deucher , Sasha Levin Subject: [PATCH 5.4 114/183] drm/radeon/ni: Fix wrong firmware size logging in ni_init_microcode() Date: Sun, 24 Mar 2024 19:45:27 -0400 Message-ID: <20240324234638.1355609-115-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Nikita Zhandarovich [ Upstream commit c4891d979c7668b195a0a75787967ec95a24ecef ] Clean up a typo in pr_err() erroneously printing NI MC 'rdev->mc_fw->size' during SMC firmware load. Log 'rdev->smc_fw->size' instead. Found by Linux Verification Center (linuxtesting.org) with static analysis tool SVACE. Fixes: 6596afd48af4 ("drm/radeon/kms: add dpm support for btc (v3)") Signed-off-by: Nikita Zhandarovich Signed-off-by: Alex Deucher Signed-off-by: Sasha Levin --- drivers/gpu/drm/radeon/ni.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/radeon/ni.c b/drivers/gpu/drm/radeon/ni.c index 410f626a39d43..1fa48853b54e4 100644 --- a/drivers/gpu/drm/radeon/ni.c +++ b/drivers/gpu/drm/radeon/ni.c @@ -826,7 +826,7 @@ int ni_init_microcode(struct radeon_device *rdev) err =3D 0; } else if (rdev->smc_fw->size !=3D smc_req_size) { pr_err("ni_mc: Bogus length %zu in firmware \"%s\"\n", - rdev->mc_fw->size, fw_name); + rdev->smc_fw->size, fw_name); err =3D -EINVAL; } } --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B000A181BA1; Sun, 24 Mar 2024 23:48:36 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324117; cv=none; b=g/D5zQrkEZVq4J4vaDJew5Gt1uby0a5odQhm2q/mDAq9Orh1XTg1NeJoQV2YifXM0NuuV36fBOzeAINhzDnnNVme99fW5jFSrDUAC2m2H56KVe5/I7Bl+R3Sk7W796jkBk5mqE+5D88JV61fePAS4MSRpuWe04kwB0m1cdxbyik= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324117; c=relaxed/simple; bh=lqEdFFPxC0/3d/WRyr5uSH3G+pJQvMxlAk1JO+CwFYs=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=PBcwbkFbn5vb3kzou3HFuPFE6tjtswMeJvUrfnmeU29DIF2B24WFO/kU1st6qx9GrYX2Lvva5L8k5tVIt/2kPgMJAJZdwnMSTHovseWovFEbTcDThwxmWe/hCgKRH1OUlJn2W+6FqMaJY99JH8me31G46gx5uVTJgptdEPGtnHs= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=AjAxMs69; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="AjAxMs69" Received: by smtp.kernel.org (Postfix) with ESMTPSA id F1327C43394; Sun, 24 Mar 2024 23:48:35 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324116; bh=lqEdFFPxC0/3d/WRyr5uSH3G+pJQvMxlAk1JO+CwFYs=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=AjAxMs69bnoMAyJNCTEU4AhCExSYl3bWoW8mTujDOLbGWBWpqYLh5+MkMs2gNkLtS PPcoCmROBlSuPRzivVU0SbA/p6yhQkD5JeeXKoo/WSdCsPvvTNWoMRbDh+K7IJWZKG GiDO9/zt5N4sUL437pryviL+PQFHMrwqTF4bYE9m0scprA+sXlfN8hsVF64QENyXb2 qYuHicEAsvymluoVInCO1CbWG/1xtOEhHzmz2a7Ph0gLxpawXs4OuuMM5YOfXqLkBD MOJ6YDuFbpiMTpXz36kd4XmWXPlF3J+Yt4FiLo2t09MZK7UxU4lwM8yIcfbIvMzxk+ VLwOYZpiYr8NA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Takashi Iwai , Arnd Bergmann , Sasha Levin Subject: [PATCH 5.4 115/183] ALSA: seq: fix function cast warnings Date: Sun, 24 Mar 2024 19:45:28 -0400 Message-ID: <20240324234638.1355609-116-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Takashi Iwai [ Upstream commit d7bf73809849463f76de42aad62c850305dd6c5d ] clang-16 points out a control flow integrity (kcfi) issue when event callbacks get converted to incompatible types: sound/core/seq/seq_midi.c:135:30: error: cast from 'int (*)(struct snd_rawm= idi_substream *, const char *, int)' to 'snd_seq_dump_func_t' (aka 'int (*)= (void *, void *, int)') converts to incompatible function type [-Werror,-Wc= ast-function-type-strict] 135 | snd_seq_dump_var_event(ev, (snd_seq_dump_func_t)dum= p_midi, substream); | ^~~~~~~~~~~~~~~~~~~~~~~~= ~~~~~~ sound/core/seq/seq_virmidi.c:83:31: error: cast from 'int (*)(struct snd_ra= wmidi_substream *, const unsigned char *, int)' to 'snd_seq_dump_func_t' (a= ka 'int (*)(void *, void *, int)') converts to incompatible function type [= -Werror,-Wcast-function-type-strict] 83 | snd_seq_dump_var_event(ev, (snd_seq_dump_fu= nc_t)snd_rawmidi_receive, vmidi->substream); | ^~~~~~~~~~~~~~~~= ~~~~~~~~~~~~~~~~~~~~~~~~ For addressing those errors, introduce wrapper functions that are used for callbacks and bridge to the actual function call with pointer cast. The code was originally added with the initial ALSA merge in linux-2.5.4. [ the patch description shamelessly copied from Arnd's original patch -- tiwai ] Fixes: 1da177e4c3f4 ("Linux-2.6.12-rc2") Reported-by: Arnd Bergmann Link: https://lore.kernel.org/r/20240213101020.459183-1-arnd@kernel.org Link: https://lore.kernel.org/r/20240213135343.16411-1-tiwai@suse.de Signed-off-by: Takashi Iwai Signed-off-by: Sasha Levin --- sound/core/seq/seq_midi.c | 8 +++++++- sound/core/seq/seq_virmidi.c | 9 ++++++++- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/sound/core/seq/seq_midi.c b/sound/core/seq/seq_midi.c index 6825940ea2cf8..a741d1ae6639a 100644 --- a/sound/core/seq/seq_midi.c +++ b/sound/core/seq/seq_midi.c @@ -111,6 +111,12 @@ static int dump_midi(struct snd_rawmidi_substream *sub= stream, const char *buf, i return 0; } =20 +/* callback for snd_seq_dump_var_event(), bridging to dump_midi() */ +static int __dump_midi(void *ptr, void *buf, int count) +{ + return dump_midi(ptr, buf, count); +} + static int event_process_midi(struct snd_seq_event *ev, int direct, void *private_data, int atomic, int hop) { @@ -130,7 +136,7 @@ static int event_process_midi(struct snd_seq_event *ev,= int direct, pr_debug("ALSA: seq_midi: invalid sysex event flags =3D 0x%x\n", ev->fl= ags); return 0; } - snd_seq_dump_var_event(ev, (snd_seq_dump_func_t)dump_midi, substream); + snd_seq_dump_var_event(ev, __dump_midi, substream); snd_midi_event_reset_decode(msynth->parser); } else { if (msynth->parser =3D=3D NULL) diff --git a/sound/core/seq/seq_virmidi.c b/sound/core/seq/seq_virmidi.c index 77d7037d1476f..82396b8c885a5 100644 --- a/sound/core/seq/seq_virmidi.c +++ b/sound/core/seq/seq_virmidi.c @@ -62,6 +62,13 @@ static void snd_virmidi_init_event(struct snd_virmidi *v= midi, /* * decode input event and put to read buffer of each opened file */ + +/* callback for snd_seq_dump_var_event(), bridging to snd_rawmidi_receive(= ) */ +static int dump_to_rawmidi(void *ptr, void *buf, int count) +{ + return snd_rawmidi_receive(ptr, buf, count); +} + static int snd_virmidi_dev_receive_event(struct snd_virmidi_dev *rdev, struct snd_seq_event *ev, bool atomic) @@ -80,7 +87,7 @@ static int snd_virmidi_dev_receive_event(struct snd_virmi= di_dev *rdev, if (ev->type =3D=3D SNDRV_SEQ_EVENT_SYSEX) { if ((ev->flags & SNDRV_SEQ_EVENT_LENGTH_MASK) !=3D SNDRV_SEQ_EVENT_LENG= TH_VARIABLE) continue; - snd_seq_dump_var_event(ev, (snd_seq_dump_func_t)snd_rawmidi_receive, vm= idi->substream); + snd_seq_dump_var_event(ev, dump_to_rawmidi, vmidi->substream); snd_midi_event_reset_decode(vmidi->parser); } else { len =3D snd_midi_event_decode(vmidi->parser, msg, sizeof(msg), ev); --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 1862A181BB0; Sun, 24 Mar 2024 23:48:38 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324119; cv=none; b=NU4/Ms9ox2OB5sBRs76AMcTWl85psK5HUa4bn5QethZcNJRpva2aVjT1EIwUE1f7bB845GpQ6qFDAHxPMVCjfwRiQc4VHeuwID7HlCcMOyQqWKdweJ02npcNcsBWFeZARnSs8kGkhbhtg3hAQ9giBMb0bqmSuwlpbQEpZIG6VTs= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324119; c=relaxed/simple; bh=H1DRja2vG1RvFtLkCWz88956tO+zY8aW6fwwiJvu+mM=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=MsTPVfovQiS0HBxftSlI901La2o0I/YCJkPGs51HHHUvVdP6uW7PycMVOfTDJOXzom0M8MC2hQgbZBvYpIYWNoV2M82oKBqAEdOcr5JCUbQASz7bUBdQIeuUOmr17r8t6fJ9Yqo2JVyKIz5sM7gZ0boI+VnnLrIowRKuMMDRlOk= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=cm4JNcHh; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="cm4JNcHh" Received: by smtp.kernel.org (Postfix) with ESMTPSA id DC115C433F1; Sun, 24 Mar 2024 23:48:36 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324118; bh=H1DRja2vG1RvFtLkCWz88956tO+zY8aW6fwwiJvu+mM=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=cm4JNcHhiP3gIrKXQeEFtbe13A8bTsM8Ay4b0appCMw9LAqzZZJj42uJ6ZvL3PKLg /B+OhgnxKGzYKEaWDmtfOvhX+L9ON1aywbV9ud7ZhS96kdOZFzsZerzGVk7ymsMjyE 6TATYLA88t7dCnVrSeXr8iLo/mwSv5nQBEWLXP7T+9Va3L90mWNCn3tpv4LpZbLcqn p82tv9ZK4kNp6v1owlZT3LoM9iL6qsI5xjeAyJENU4kZ3AciN256LfOeo2a0Bd322c i+9Jt06yE0+S3bFhzEc7DQiP5LzNbyu4Xa1NZwrSwzzp5i8I3SbzbYk/WrANwdkknt 3SpysiKMfQEuw== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Ian Rogers , Kan Liang , K Prateek Nayak , James Clark , Kaige Ye , John Garry , Namhyung Kim , Sasha Levin Subject: [PATCH 5.4 116/183] perf stat: Avoid metric-only segv Date: Sun, 24 Mar 2024 19:45:29 -0400 Message-ID: <20240324234638.1355609-117-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Ian Rogers [ Upstream commit 2543947c77e0e224bda86b4e7220c2f6714da463 ] Cycles is recognized as part of a hard coded metric in stat-shadow.c, it may call print_metric_only with a NULL fmt string leading to a segfault. Handle the NULL fmt explicitly. Fixes: 088519f318be ("perf stat: Move the display functions to stat-display= .c") Signed-off-by: Ian Rogers Reviewed-by: Kan Liang Cc: K Prateek Nayak Cc: James Clark Cc: Kaige Ye Cc: John Garry Signed-off-by: Namhyung Kim Link: https://lore.kernel.org/r/20240209204947.3873294-4-irogers@google.com Signed-off-by: Sasha Levin --- tools/perf/util/stat-display.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/perf/util/stat-display.c b/tools/perf/util/stat-display.c index e18c26501a7fe..70612ec583f35 100644 --- a/tools/perf/util/stat-display.c +++ b/tools/perf/util/stat-display.c @@ -263,7 +263,7 @@ static void print_metric_only(struct perf_stat_config *= config, if (color) mlen +=3D strlen(color) + sizeof(PERF_COLOR_RESET) - 1; =20 - color_snprintf(str, sizeof(str), color ?: "", fmt, val); + color_snprintf(str, sizeof(str), color ?: "", fmt ?: "", val); fprintf(out, "%*s ", mlen, str); } =20 --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 8068B181BA8; Sun, 24 Mar 2024 23:48:39 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324120; cv=none; b=MyuIHUCQqF74UK7tT1g3u3cByseI5UU1iba9HYftd1Fr9weUHCOtWeWmE8yF5md3/plsLJSNXESv4ToCsooPELGxrSCXzSw3qqB3gRo1PHTfc+nXk0fT4JXOeCZ9EagOlFclaPXX2b3udNGFSpOpfcHdso0srt7M8750pbmTEVY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324120; c=relaxed/simple; bh=5hWHSp4Kd21wkJ4cGovNsX1pCsEPFCrHlCOQt2n9Y5Y=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=KQtnZjpI4HJG7gxywqxB7NbI/9+HKfzR649x3RJ+i3MEQ+82TT+JYXlSu+L7spqOt7HjuMHVjbv3Oc8UoYhOWhlbxZ25rRw+iT9vs+aMnuqLvh2j85JHv7a4lST8mqzQ7Q6G+vMiffR9FGBmTd0A4BmmxHaUf7nBQyDMxgVH7HE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=tjURE3il; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="tjURE3il" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 9938AC433C7; Sun, 24 Mar 2024 23:48:38 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324119; bh=5hWHSp4Kd21wkJ4cGovNsX1pCsEPFCrHlCOQt2n9Y5Y=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=tjURE3ilJb0GHj9nDkWnbzuZnMRZmDLV1L2cmWIZW1kdE5HDXhHh+nhDfHYiU7DKn BBp++i7htL67IVx1TXf+mGL6UpUzbUCX7YIgt7lHdyqPFz7SBLGxluxXTK8vKs8RYV XZyWTP75Uhm7zzhvxxE9G4/sZ0d0/WgQj/3vBYxxUUWck56dmBn3GB/hniS/hJ2EUR yo7LhjT2kfeJcYWZO2AfeaaqFUsXU/vAP/sr+mNlFKCLiPVOikiIBpt4ij8Oi8DFsM ZQQYZXEit8PRW84qVNHCxYYywJgLF9mkjkm2SCHQvU7yNC5iy7g5RWeoX+EhuMW9YV W9F0DLNuaabZA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Lucas Stach , Philipp Zabel , Hans Verkuil , Sasha Levin Subject: [PATCH 5.4 117/183] media: imx: csc/scaler: fix v4l2_ctrl_handler memory leak Date: Sun, 24 Mar 2024 19:45:30 -0400 Message-ID: <20240324234638.1355609-118-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Lucas Stach [ Upstream commit 4797a3dd46f220e6d83daf54d70c5b33db6deb01 ] Free the memory allocated in v4l2_ctrl_handler_init on release. Fixes: a8ef0488cc59 ("media: imx: add csc/scaler mem2mem device") Signed-off-by: Lucas Stach Reviewed-by: Philipp Zabel Signed-off-by: Hans Verkuil Signed-off-by: Sasha Levin --- drivers/staging/media/imx/imx-media-csc-scaler.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/staging/media/imx/imx-media-csc-scaler.c b/drivers/sta= ging/media/imx/imx-media-csc-scaler.c index a15d970adb983..135e1e64c2443 100644 --- a/drivers/staging/media/imx/imx-media-csc-scaler.c +++ b/drivers/staging/media/imx/imx-media-csc-scaler.c @@ -800,6 +800,7 @@ static int ipu_csc_scaler_release(struct file *file) =20 dev_dbg(priv->dev, "Releasing instance %p\n", ctx); =20 + v4l2_ctrl_handler_free(&ctx->ctrl_hdlr); v4l2_m2m_ctx_release(ctx->fh.m2m_ctx); v4l2_fh_del(&ctx->fh); v4l2_fh_exit(&ctx->fh); --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 7009A181BBC; Sun, 24 Mar 2024 23:48:40 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324121; cv=none; b=UBgpqEYlnMBGZJ7YG0apny3Sou2xc2gNXTTNWVfufirAPp3uJL8TonZSYPdKvHMS1AyUFKgu6vO/czs+XLrr643Pm2Z1x4nZ2MLbzKbpoWucZTVkVefpnjepsgkYxhufXjnEJeGK6jdWLGNVVD3NdMXSPB+7A3uDDojZYP84R38= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324121; c=relaxed/simple; bh=ugIhqE7GdCstWrrhe1fg0bgWC8eenvBUCJB2XR34C3k=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=mB4+6eodAYvf2UZ4P5cRVfvVTDibHgaQob78fDpAKYwg1LiF7oiRI4jzWAEBFhi2s0+hEGwJBDaLtJSA4y5/RsZdPm9ufIi7gdKYKWEOGSU9euXENfQseI4+QRW7PaR7IxsxIMWJ2ipLhDdLj98PvuZkLso7ST0QCleXJN+Swjw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=aHoPLmNB; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="aHoPLmNB" Received: by smtp.kernel.org (Postfix) with ESMTPSA id A9265C43394; Sun, 24 Mar 2024 23:48:39 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324120; bh=ugIhqE7GdCstWrrhe1fg0bgWC8eenvBUCJB2XR34C3k=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=aHoPLmNBzRRXjFungvJR2lP+MqC8qdIbC4H7aRtc+x+xdfca+mx+Sgb7+ApSwvMcX XPgIDzZCxm0a1pOroQucDnPj7vQzsDedYkTBwJN6YEY8+783WzXpnWUEBAkhMVS4xm FwKl8oi0qOpyioYvu+6cE2lgoNroFE/lrvZAFWCnawMbbKulvwatcCg0NHQxT4vUWC LNTGyWeImiMxlxusPNs1BRbLfKFGN+mv+8Zxqhk/I85PkSa0OG2jarklGOvDPwMhPc Gu7oAmBKBuAdLx8k/0cPPPYqgyYaS/EOl/CRsrZCUQdg2pNNe16+x+X/SNI7Z313gP VpSmuSYomk0Zw== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Daniil Dulov , Hans Verkuil , Sasha Levin Subject: [PATCH 5.4 118/183] media: go7007: add check of return value of go7007_read_addr() Date: Sun, 24 Mar 2024 19:45:31 -0400 Message-ID: <20240324234638.1355609-119-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Daniil Dulov [ Upstream commit 0b70530ee740861f4776ff724fcc25023df1799a ] If go7007_read_addr() returns error channel is not assigned a value. In this case go to allocfail. Found by Linux Verification Center (linuxtesting.org) with SVACE. Fixes: 866b8695d67e ("Staging: add the go7007 video driver") Signed-off-by: Daniil Dulov Signed-off-by: Hans Verkuil Signed-off-by: Sasha Levin --- drivers/media/usb/go7007/go7007-usb.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/media/usb/go7007/go7007-usb.c b/drivers/media/usb/go70= 07/go7007-usb.c index f889c9d740cd1..1cfe8371511d0 100644 --- a/drivers/media/usb/go7007/go7007-usb.c +++ b/drivers/media/usb/go7007/go7007-usb.c @@ -1198,7 +1198,9 @@ static int go7007_usb_probe(struct usb_interface *int= f, u16 channel; =20 /* read channel number from GPIO[1:0] */ - go7007_read_addr(go, 0x3c81, &channel); + if (go7007_read_addr(go, 0x3c81, &channel)) + goto allocfail; + channel &=3D 0x3; go->board_id =3D GO7007_BOARDID_ADLINK_MPG24; usb->board =3D board =3D &board_adlink_mpg24; --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 895B5181BBE; Sun, 24 Mar 2024 23:48:41 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324121; cv=none; b=GOXOaaYQgHTm2PAb8jKgXqRkuoms3bHusMBBr4vVSR3aPFRLvxrdZheDajxAzsWuOXf6VBtxhytCp08UZDeCoIADxZany0porysN2rpsdZcX/fRrXBylIwTdqKU497qhzUI83jEY6AqKIOQ5B8AkktzfDt2tC6fOksObyR2i3YI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324121; c=relaxed/simple; bh=F94zCIHM1waXUDSLk5g9afMxrIzvcf1IbqIyFK2zXMI=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=CgFPJgXkoDpJkrkkpJ4GID0RcPS7X1e5UzLk718m/VCrwSg2Gd43WYdmSHQq3pbLxgNjqnpK+kkFN65/HLUe3zofrddzrpJjMrT+9+41Ht2HbrZvNeoX+jYyAjg8veACSdh4Uua/ygGCI1SKoOT2/+K6B0OvBj3SrZ3fEXaCoH0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=Dri6hP20; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="Dri6hP20" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 96D79C43143; Sun, 24 Mar 2024 23:48:40 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324121; bh=F94zCIHM1waXUDSLk5g9afMxrIzvcf1IbqIyFK2zXMI=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Dri6hP20jWUUUv17ddev9mainN6x0HBTArSEQT30vheF6rsulOFUjbhcMzZnEzAs2 /33DyaCQE6KJ9zUTrU9C8kO9p7ijCOtNo8/15c4jcb5O4XIwofKeEzGLzdg84icBAT qTHZ3YKjgNRXhZv1debbedlXRdWTo4p8TumeMOS04YlonCzetZiRib6kqOetwr5EkL HlHRvkLRvI+vj+H8DUC2/PPRIFGPCqpfHeASoX6M73S9c2B4APzv7Gl1ImeQYuulXE aMzNxsXYFJJCzfRsLjtNBP7hihO1/jSBiO+kANJXTiMQxshipLcTxvqkELM+ITDK4J NJFjP6QZ/lStg== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Daniil Dulov , Hans Verkuil , Sasha Levin Subject: [PATCH 5.4 119/183] media: pvrusb2: remove redundant NULL check Date: Sun, 24 Mar 2024 19:45:32 -0400 Message-ID: <20240324234638.1355609-120-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Daniil Dulov [ Upstream commit 95ac1210fb2753f968ebce0730d4fbc553c2a3dc ] Pointer dip->stream cannot be NULL due to a shift, thus remove redundant NULL check. Found by Linux Verification Center (linuxtesting.org) with SVACE. Fixes: c74e0062684b ("V4L/DVB (5059): Pvrusb2: Be smarter about mode restor= ation") Signed-off-by: Daniil Dulov Signed-off-by: Hans Verkuil Signed-off-by: Sasha Levin --- drivers/media/usb/pvrusb2/pvrusb2-v4l2.c | 5 ----- 1 file changed, 5 deletions(-) diff --git a/drivers/media/usb/pvrusb2/pvrusb2-v4l2.c b/drivers/media/usb/p= vrusb2/pvrusb2-v4l2.c index eaa08c7999d4f..d79b4083c9d4a 100644 --- a/drivers/media/usb/pvrusb2/pvrusb2-v4l2.c +++ b/drivers/media/usb/pvrusb2/pvrusb2-v4l2.c @@ -1202,11 +1202,6 @@ static void pvr2_v4l2_dev_init(struct pvr2_v4l2_dev = *dip, dip->minor_type =3D pvr2_v4l_type_video; nr_ptr =3D video_nr; caps |=3D V4L2_CAP_VIDEO_CAPTURE | V4L2_CAP_AUDIO; - if (!dip->stream) { - pr_err(KBUILD_MODNAME - ": Failed to set up pvrusb2 v4l video dev due to missing stream instan= ce\n"); - return; - } break; case VFL_TYPE_VBI: dip->config =3D pvr2_config_vbi; --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9AC731802D0; Sun, 24 Mar 2024 23:48:42 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324123; cv=none; b=Y2dnn2ZeMPFSbcMbPlrwwXUbyX5b+26IC2ij0YuDp/+GeAmEyH4pDl0OJ6CBeHxN19BtU3SQoXS+24TpAeYgWYPCjyfvWI5gnd1f1SuxXvkglnlcjMfYh5ry/bDoFdyH5xS4tZqnnCHpTsPu+MSQG0oTVUBkRiMaLac6QFAaO3U= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324123; c=relaxed/simple; bh=PgC/I/hLPi2WpnNE4b1Sm1HzySEZEC/xq+NE+iPiQkc=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=pXbElKcv2Bp/vg+Ev/X67SdptRTP6fMeaPRZ5bL+JO9u8DL5tAVJgFcTVfV+urb/Scfgv24ug43T2TzqYF2vCUVAIw6uDDQW1+fTwl74Wi7StpokbIHhvyMLafGu5BQU2UameDl6WN1XgoT2U/FpHwE695IN6N6oA4QdFQ8z1Rg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=f34PB06n; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="f34PB06n" Received: by smtp.kernel.org (Postfix) with ESMTPSA id B1B58C43390; Sun, 24 Mar 2024 23:48:41 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324122; bh=PgC/I/hLPi2WpnNE4b1Sm1HzySEZEC/xq+NE+iPiQkc=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=f34PB06nMZmEPFXxZ22v/Fj1QFoa6f2pc3b5j2hcpgliLFRQxfjfi17hY5bInm+vo wqkpX19S5SWziNNF8R3tUfMsV1PtcHrZL8DOrHX8NBH2s8BEFsrRf1tou6ngsOMUmG IWcuFT64qsdyRl6xIWwX2O6/Iq6SjscB+1f6eubI5xIdZnJaO+Jh0gKj4Fg4z6fr8E kH2ZEsUao74g8AQSdzyUrAXAVibiROuRD2oYHIdQak14qGMY2sCqA/wq+5Bq/bMkXt BljkDk+pBUmFVZ3wW2hrn4Tc9igxuk2KDA/mPkzn8XhaYmgYRXtfQqKJHjZJp8FTZN bEOuPUBnhuOmw== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Arnd Bergmann , Hans Verkuil , Sasha Levin Subject: [PATCH 5.4 120/183] media: pvrusb2: fix pvr2_stream_callback casts Date: Sun, 24 Mar 2024 19:45:33 -0400 Message-ID: <20240324234638.1355609-121-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Arnd Bergmann [ Upstream commit 30baa4a96b23add91a87305baaeba82c4e109e1f ] clang-16 complains about a control flow integrity (KCFI) issue in pvrusb2, which casts three different prototypes into pvr2_stream_callback: drivers/media/usb/pvrusb2/pvrusb2-v4l2.c:1070:30: error: cast from 'void (*= )(struct pvr2_v4l2_fh *)' to 'pvr2_stream_callback' (aka 'void (*)(void *)'= ) converts to incompatible function type [-Werror,-Wcast-function-type-stri= ct] 1070 | pvr2_stream_set_callback(sp,(pvr2_stream_callback)pvr2_v4l2= _notify,fh); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~= ~~~~~~~ drivers/media/usb/pvrusb2/pvrusb2-context.c:110:6: error: cast from 'void (= *)(struct pvr2_context *)' to 'void (*)(void *)' converts to incompatible f= unction type [-Werror,-Wcast-function-type-strict] 110 | (void (*)(void *))pvr2_cont= ext_notify, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~= ~~~~~~~~~~ drivers/media/usb/pvrusb2/pvrusb2-dvb.c:152:6: error: cast from 'void (*)(s= truct pvr2_dvb_adapter *)' to 'pvr2_stream_callback' (aka 'void (*)(void *)= ') converts to incompatible function type [-Werror,-Wcast-function-type-str= ict] 152 | (pvr2_stream_callback) pvr2_dvb_no= tify, adap); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~= ~~~~ Change the functions to actually take a void* argument so the cast is no lo= nger needed. Fixes: bb8ce9d9143c ("V4L/DVB (7682): pvrusb2-dvb: finish up stream & buffe= r handling") Signed-off-by: Arnd Bergmann Signed-off-by: Hans Verkuil Signed-off-by: Sasha Levin --- drivers/media/usb/pvrusb2/pvrusb2-context.c | 8 ++++---- drivers/media/usb/pvrusb2/pvrusb2-dvb.c | 6 ++++-- drivers/media/usb/pvrusb2/pvrusb2-v4l2.c | 6 ++++-- 3 files changed, 12 insertions(+), 8 deletions(-) diff --git a/drivers/media/usb/pvrusb2/pvrusb2-context.c b/drivers/media/us= b/pvrusb2/pvrusb2-context.c index 1764674de98bc..58f2f3ff10ee2 100644 --- a/drivers/media/usb/pvrusb2/pvrusb2-context.c +++ b/drivers/media/usb/pvrusb2/pvrusb2-context.c @@ -90,8 +90,10 @@ static void pvr2_context_destroy(struct pvr2_context *mp) } =20 =20 -static void pvr2_context_notify(struct pvr2_context *mp) +static void pvr2_context_notify(void *ptr) { + struct pvr2_context *mp =3D ptr; + pvr2_context_set_notify(mp,!0); } =20 @@ -106,9 +108,7 @@ static void pvr2_context_check(struct pvr2_context *mp) pvr2_trace(PVR2_TRACE_CTXT, "pvr2_context %p (initialize)", mp); /* Finish hardware initialization */ - if (pvr2_hdw_initialize(mp->hdw, - (void (*)(void *))pvr2_context_notify, - mp)) { + if (pvr2_hdw_initialize(mp->hdw, pvr2_context_notify, mp)) { mp->video_stream.stream =3D pvr2_hdw_get_video_stream(mp->hdw); /* Trigger interface initialization. By doing this diff --git a/drivers/media/usb/pvrusb2/pvrusb2-dvb.c b/drivers/media/usb/pv= rusb2/pvrusb2-dvb.c index 6954584526a32..1b768e7466721 100644 --- a/drivers/media/usb/pvrusb2/pvrusb2-dvb.c +++ b/drivers/media/usb/pvrusb2/pvrusb2-dvb.c @@ -88,8 +88,10 @@ static int pvr2_dvb_feed_thread(void *data) return stat; } =20 -static void pvr2_dvb_notify(struct pvr2_dvb_adapter *adap) +static void pvr2_dvb_notify(void *ptr) { + struct pvr2_dvb_adapter *adap =3D ptr; + wake_up(&adap->buffer_wait_data); } =20 @@ -149,7 +151,7 @@ static int pvr2_dvb_stream_do_start(struct pvr2_dvb_ada= pter *adap) } =20 pvr2_stream_set_callback(pvr->video_stream.stream, - (pvr2_stream_callback) pvr2_dvb_notify, adap); + pvr2_dvb_notify, adap); =20 ret =3D pvr2_stream_set_buffer_count(stream, PVR2_DVB_BUFFER_COUNT); if (ret < 0) return ret; diff --git a/drivers/media/usb/pvrusb2/pvrusb2-v4l2.c b/drivers/media/usb/p= vrusb2/pvrusb2-v4l2.c index d79b4083c9d4a..f8da501689c32 100644 --- a/drivers/media/usb/pvrusb2/pvrusb2-v4l2.c +++ b/drivers/media/usb/pvrusb2/pvrusb2-v4l2.c @@ -1037,8 +1037,10 @@ static int pvr2_v4l2_open(struct file *file) } =20 =20 -static void pvr2_v4l2_notify(struct pvr2_v4l2_fh *fhp) +static void pvr2_v4l2_notify(void *ptr) { + struct pvr2_v4l2_fh *fhp =3D ptr; + wake_up(&fhp->wait_data); } =20 @@ -1071,7 +1073,7 @@ static int pvr2_v4l2_iosetup(struct pvr2_v4l2_fh *fh) =20 hdw =3D fh->channel.mc_head->hdw; sp =3D fh->pdi->stream->stream; - pvr2_stream_set_callback(sp,(pvr2_stream_callback)pvr2_v4l2_notify,fh); + pvr2_stream_set_callback(sp, pvr2_v4l2_notify, fh); pvr2_hdw_set_stream_type(hdw,fh->pdi->config); if ((ret =3D pvr2_hdw_set_streaming(hdw,!0)) < 0) return ret; return pvr2_ioread_set_enabled(fh->rhp,!0); --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 0653F181CE3; Sun, 24 Mar 2024 23:48:44 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324125; cv=none; b=OIfHHy/oYTzzLGa6sFPsMnvHFOhzW+gn5AGs6g2Jij1wZNoEAnFLiclfXSTnSLhmso2reALS9OBeHPlUIhUQrqYsV4Eg2VqrKf5cE49HK+mYeEhtCWG6MfskFCG4I6zqAvrpIS2yrBo16Py2cHAoPbJ1TCGuxbL0zCGjQDx8R4E= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324125; c=relaxed/simple; bh=ZfOUDs7jrsD7iao803en/1YeW13GBtchnkANuEkhMvg=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=BWsevuMwy6ySIvTmzlhAl56jq3+xpS2MWmbbHAEww8K1XdvbDeQ6GXePsGVZfxwbMdDVd6YFeH5RrMQRN0LyGvQiXGSsQqTHzI8TlrbbogAQbjBtDcCqQ/WRbp8GyXffr+ZNWVyI4YjjHm9LtliVa3bNdxQWvYYivGoXw8UoxUs= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=jeeO3puJ; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="jeeO3puJ" Received: by smtp.kernel.org (Postfix) with ESMTPSA id C8671C433F1; Sun, 24 Mar 2024 23:48:42 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324123; bh=ZfOUDs7jrsD7iao803en/1YeW13GBtchnkANuEkhMvg=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=jeeO3puJDqmVnndLpd4HmSdi+r92n1fbS344j7W6Ou59JvenNMqXE47j3MNT+HAwX 3dphW8DktwRiTndCTpZnCccRfXg2zmRQo8ymL43abckFPB1UQ3wB9+laiP5MvXGPIe KR+Gf8S6buU5L/azwNcG5S1kjoqBl4BoxZcQmWhjsF+bO0V7Tl7z4W0OZwdDuAxK4+ pkMjUjyb4magu36sksLvVZOpmle5Vrd6vogr1BRaRKuxDvjQiMyZ2EOwRIvBo26jGm tXyQsVy5lLG5SZ2/nOZZxlVro3WJEwsVLxwqPhnpAT8jOS7HIGG/y1jAMFLptVbp0z /75HNGgdgyihA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Konrad Dybcio , Caleb Connolly , Bjorn Andersson , Sasha Levin Subject: [PATCH 5.4 121/183] clk: qcom: dispcc-sdm845: Adjust internal GDSC wait times Date: Sun, 24 Mar 2024 19:45:34 -0400 Message-ID: <20240324234638.1355609-122-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Konrad Dybcio [ Upstream commit 117e7dc697c2739d754db8fe0c1e2d4f1f5d5f82 ] SDM845 downstream uses non-default values for GDSC internal waits. Program them accordingly to avoid surprises. Fixes: 81351776c9fb ("clk: qcom: Add display clock controller driver for SD= M845") Signed-off-by: Konrad Dybcio Tested-by: Caleb Connolly # OnePlus 6 Link: https://lore.kernel.org/r/20240103-topic-845gdsc-v1-1-368efbe1a61d@li= naro.org Signed-off-by: Bjorn Andersson Signed-off-by: Sasha Levin --- drivers/clk/qcom/dispcc-sdm845.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/clk/qcom/dispcc-sdm845.c b/drivers/clk/qcom/dispcc-sdm= 845.c index 0cc4909b5dbef..cb7a2d9247b04 100644 --- a/drivers/clk/qcom/dispcc-sdm845.c +++ b/drivers/clk/qcom/dispcc-sdm845.c @@ -569,6 +569,8 @@ static struct clk_branch disp_cc_mdss_vsync_clk =3D { =20 static struct gdsc mdss_gdsc =3D { .gdscr =3D 0x3000, + .en_few_wait_val =3D 0x6, + .en_rest_wait_val =3D 0x5, .pd =3D { .name =3D "mdss_gdsc", }, --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 5EB4E181CEE; Sun, 24 Mar 2024 23:48:45 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324126; cv=none; b=TVIQ3i7LuEYKP6+asWE+a5DoTo/IPEaCl/05r/0BP7DYiewz9g5OCdHZw0vJFRfrQXeiJGsKISt8PykpfvK8gGgjV1ija3uZ/FqjWRwqDb9OTGW8J1aq4JQv5gS5sckSvDTufpdffYC887v2iooPxpEGR9Y/jHMxl+1Ngwij248= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324126; c=relaxed/simple; bh=ZwoDu9NJw8zKoFbb6Bko5Csdq349fZXE97KwHAXSHU4=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=Vnpp0vDr+ZS0P/a7jS1Oy7q/GOgZylqaTKi940MPyH3FqK8m3jgB9wGGV50iW7d59MLbgMmXSdUGe0PZo0BkL4ENLP6BdQqEC78lCwhkNLF6Ol/BGL8MwOwuXkCoi3zNYpdOwI9VPKKNycKhUYUenmfXrh5sR3DFm+YwdFybiGk= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=LxJPRFop; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="LxJPRFop" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 2A55BC433C7; Sun, 24 Mar 2024 23:48:44 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324125; bh=ZwoDu9NJw8zKoFbb6Bko5Csdq349fZXE97KwHAXSHU4=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=LxJPRFop57awjhExFgBB25DvMuofhjHTCJOx35Huv8t99VSgy2qAAge0W+8zxaQhM mVwNvZzLyggiTAZl0epTrHFrRyu6s33Ke2v5gXJKYrgqSGZDcIGknqeFeC5nL7EceD QgdtL4LBQspaV+eKgYFdGXLl7WFgAefu92wUhJlzY6u7De5IKgpBdyLmLReDqLLVw5 9cP1sLcXA3jQd8w9NDCJJRcUG3ssTATViN/+Pqa4XG/1+Sj+MVXYUsZVk2f5DihvJG DZf64sAAUdM/SgeQftQzkTuO6KaGsFzSm4xRYA+18Jsj2At8yiI/rsWB2VLTsOPPBH R7QV68VwDLniQ== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: AngeloGioacchino Del Regno , Alexandre Mergnat , CK Hu , Chun-Kuang Hu , Sasha Levin Subject: [PATCH 5.4 122/183] drm/mediatek: dsi: Fix DSI RGB666 formats and definitions Date: Sun, 24 Mar 2024 19:45:35 -0400 Message-ID: <20240324234638.1355609-123-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: AngeloGioacchino Del Regno [ Upstream commit fae6f815505301b92d9113764f4d76d0bfe45607 ] The register bits definitions for RGB666 formats are wrong in multiple ways: first, in the DSI_PS_SEL bits region, the Packed 18-bits RGB666 format is selected with bit 1, while the Loosely Packed one is bit 2, and second - the definition name "LOOSELY_PS_18BIT_RGB666" is wrong because the loosely packed format is 24 bits instead! Either way, functions mtk_dsi_ps_control_vact() and mtk_dsi_ps_control() do not even agree on the DSI_PS_SEL bit to set in DSI_PSCTRL: one sets loosely packed (24) on RGB666, the other sets packed (18), and the other way around for RGB666_PACKED. Fixing this entire stack of issues is done in one go: - Use the correct bit for the Loosely Packed RGB666 definition - Rename LOOSELY_PS_18BIT_RGB666 to LOOSELY_PS_24BIT_RGB666 - Change ps_bpp_mode in mtk_dsi_ps_control_vact() to set: - Loosely Packed, 24-bits for MIPI_DSI_FMT_RGB666 - Packed, 18-bits for MIPI_DSI_FMT_RGB666_PACKED Fixes: 2e54c14e310f ("drm/mediatek: Add DSI sub driver") Reviewed-by: Alexandre Mergnat Reviewed-by: CK Hu Signed-off-by: AngeloGioacchino Del Regno Link: https://patchwork.kernel.org/project/dri-devel/patch/20240215085316.5= 6835-3-angelogioacchino.delregno@collabora.com/ Signed-off-by: Chun-Kuang Hu Signed-off-by: Sasha Levin --- drivers/gpu/drm/mediatek/mtk_dsi.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/drivers/gpu/drm/mediatek/mtk_dsi.c b/drivers/gpu/drm/mediatek/= mtk_dsi.c index e82705a33acfd..9af900076dee4 100644 --- a/drivers/gpu/drm/mediatek/mtk_dsi.c +++ b/drivers/gpu/drm/mediatek/mtk_dsi.c @@ -64,8 +64,8 @@ #define DSI_PS_WC 0x3fff #define DSI_PS_SEL (3 << 16) #define PACKED_PS_16BIT_RGB565 (0 << 16) -#define LOOSELY_PS_18BIT_RGB666 (1 << 16) -#define PACKED_PS_18BIT_RGB666 (2 << 16) +#define PACKED_PS_18BIT_RGB666 (1 << 16) +#define LOOSELY_PS_24BIT_RGB666 (2 << 16) #define PACKED_PS_24BIT_RGB888 (3 << 16) =20 #define DSI_VSA_NL 0x20 @@ -321,10 +321,10 @@ static void mtk_dsi_ps_control_vact(struct mtk_dsi *d= si) ps_bpp_mode |=3D PACKED_PS_24BIT_RGB888; break; case MIPI_DSI_FMT_RGB666: - ps_bpp_mode |=3D PACKED_PS_18BIT_RGB666; + ps_bpp_mode |=3D LOOSELY_PS_24BIT_RGB666; break; case MIPI_DSI_FMT_RGB666_PACKED: - ps_bpp_mode |=3D LOOSELY_PS_18BIT_RGB666; + ps_bpp_mode |=3D PACKED_PS_18BIT_RGB666; break; case MIPI_DSI_FMT_RGB565: ps_bpp_mode |=3D PACKED_PS_16BIT_RGB565; @@ -375,7 +375,7 @@ static void mtk_dsi_ps_control(struct mtk_dsi *dsi) dsi_tmp_buf_bpp =3D 3; break; case MIPI_DSI_FMT_RGB666: - tmp_reg =3D LOOSELY_PS_18BIT_RGB666; + tmp_reg =3D LOOSELY_PS_24BIT_RGB666; dsi_tmp_buf_bpp =3D 3; break; case MIPI_DSI_FMT_RGB666_PACKED: --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 08C1615ADA0; Sun, 24 Mar 2024 23:48:46 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324126; cv=none; b=bQEieS/o4zEVewJrLHGJWrBXVRlTc3tX4vdio702jxypaLas07RDuqkznd7AbaEcuVquNXn/KzcNnJWRZIOeaKUNtULP8NEdWUNGKb/qehsVgwgUZzepztQgUBAw+SHpk5AKya9htBNaB3Odm2N6z22n7ktS4NPYA9NNBm+tljo= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324126; c=relaxed/simple; bh=E/aVq3LMLOS4w8fJ1kkLvsMvFHnSWyWMsphkSLSDtHo=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=cqdnfC6+k1LqQgi4uvbzwLZlVaixPWdVvl9Jw8O8NJqEE+mXXLNELK1ZvTbtCMowPkk6zIPupxmNl0+UK6/pkY9tMwGoM994UyohkPKB80Jmug9sD7rWs9OkICHzb08TI1PUPV1j8IBaCpsQ9RGErM1KKnqO05SUEWgToqswPVM= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=ZIMZSGPT; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="ZIMZSGPT" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 45D3AC43390; Sun, 24 Mar 2024 23:48:45 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324125; bh=E/aVq3LMLOS4w8fJ1kkLvsMvFHnSWyWMsphkSLSDtHo=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=ZIMZSGPTcdS5dQTJPDycEvCGsRNm8iajya+YAnzMdekAo73cKyST0PYoIZBQMaLzK nNZoKfxWtvHU6vNWZuO5Y8EFIMNf3z6UI1G3Hz1zTAG8bJRrv4/hChH7IK9uK5mI8r oiY29RZWSAMy3Bdq4WKsxM0SfWpGd6eHYGKkgtoJMWtJc4q3yXRiilHHXyAwvqYAbw BPTZurBs3y8DkkLIPuT1ccRQd01Ql3bKxlkAVSyf8egBHHOV6/+AvpsJfSLhJDcvfW Ce/a//jq6EW7LgXUDlhpmbkBAWiYGS4Mw5+OaV/qP0kKEVcPBkdJHwSEWRlRzziFkB rlR5vasrlSuNg== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: =?UTF-8?q?J=C3=B6rg=20Wedekind?= , Bjorn Helgaas , Sasha Levin Subject: [PATCH 5.4 123/183] PCI: Mark 3ware-9650SE Root Port Extended Tags as broken Date: Sun, 24 Mar 2024 19:45:36 -0400 Message-ID: <20240324234638.1355609-124-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable From: J=C3=B6rg Wedekind [ Upstream commit baf67aefbe7d7deafa59ca49612d163f8889934c ] Per PCIe r6.1, sec 2.2.6.2 and 7.5.3.4, a Requester may not use 8-bit Tags unless its Extended Tag Field Enable is set, but all Receivers/Completers must handle 8-bit Tags correctly regardless of their Extended Tag Field Enable. Some devices do not handle 8-bit Tags as Completers, so add a quirk for them. If we find such a device, we disable Extended Tags for the entire hierarchy to make peer-to-peer DMA possible. The 3ware 9650SE seems to have issues with handling 8-bit tags. Mark it as broken. This fixes PCI Parity Errors like : 3w-9xxx: scsi0: ERROR: (0x06:0x000C): PCI Parity Error: clearing. 3w-9xxx: scsi0: ERROR: (0x06:0x000D): PCI Abort: clearing. 3w-9xxx: scsi0: ERROR: (0x06:0x000E): Controller Queue Error: clearing. 3w-9xxx: scsi0: ERROR: (0x06:0x0010): Microcontroller Error: clearing. Link: https://lore.kernel.org/r/20240219132811.8351-1-joerg@wedekind.de Fixes: 60db3a4d8cc9 ("PCI: Enable PCIe Extended Tags if supported") Closes: https://bugzilla.kernel.org/show_bug.cgi?id=3D202425 Signed-off-by: J=C3=B6rg Wedekind Signed-off-by: Bjorn Helgaas Signed-off-by: Sasha Levin --- drivers/pci/quirks.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c index 821e71a45849c..3bc7058404156 100644 --- a/drivers/pci/quirks.c +++ b/drivers/pci/quirks.c @@ -5396,6 +5396,7 @@ static void quirk_no_ext_tags(struct pci_dev *pdev) =20 pci_walk_bus(bridge->bus, pci_configure_extended_tags, NULL); } +DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_3WARE, 0x1004, quirk_no_ext_tags); DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_SERVERWORKS, 0x0132, quirk_no_ext_ta= gs); DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_SERVERWORKS, 0x0140, quirk_no_ext_ta= gs); DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_SERVERWORKS, 0x0141, quirk_no_ext_ta= gs); --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id E6EFE181CEB; Sun, 24 Mar 2024 23:48:46 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324128; cv=none; b=HIhKuZUqJzYtldrjkUld+CpBlQut45L+Kr3AqS8SHcDxsT0QgXarZ6EH6oP4eOX3UYfmwnj2e+z7BYCb+V0WEGM71++Wt7vug8ALOTwP/QMXnUYTVud5DPNAxCMIQZpiKmOeZJruScQe8Cyg5ILywdKaOQUVdNlktssH2zWI+5g= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324128; c=relaxed/simple; bh=rNDijfEyC5ir0j9HjxxEwdGbtVG4058Sq8QzGTqaCdg=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=IPl3Gtvnv/PbLz9a8CwUQ2Yj3Vw6cnnfzM+k96SxuxEnW2KL4rnE7us57aDbpAQcKwHV09f5kcOYD6Kygmm8KtSJVJ+ffpMiw+HmIB04Rca3zyNjfZWz9MV5xRCCu7QHg9yRDZp/6b60y6GIitkzPVccUvRiJWt61S2BSsr5p9E= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=OQMfnODo; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="OQMfnODo" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 2CF3EC433A6; Sun, 24 Mar 2024 23:48:46 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324126; bh=rNDijfEyC5ir0j9HjxxEwdGbtVG4058Sq8QzGTqaCdg=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=OQMfnODouKKGm3PoNNdfMoj6WpwesBz3J7cgRvosAa00naiyqdzGZibXPnVwZc5XL md6egDitQ3DHyXQqVGzqNMmXjmZ+btvdGITPQiiw7IvQxw4QCy7aBjBKZBj2G6PHiM YznR8g1lSiIy77EyAhgxBZ74BZmpudwLPx0QbfFFsAZzBusqnbSRskx5o5fAlEpd9h PvtQZ9QTw1twPHlP1F4ChFmD68t2/WveHFJM1fXo4PrqzNXK1mHAXDC18FoKXp728v w0qflEPwY3wLHZQk7MKjDNgNqY9BH1XJIeJ7aC+pSpUKM1xjPXPkY/Dnhe/J5VYuPU EmC18hbCi9osQ== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Christophe JAILLET , Stephen Boyd , Sasha Levin Subject: [PATCH 5.4 124/183] clk: hisilicon: hi3519: Release the correct number of gates in hi3519_clk_unregister() Date: Sun, 24 Mar 2024 19:45:37 -0400 Message-ID: <20240324234638.1355609-125-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Christophe JAILLET [ Upstream commit 74e39f526d95c0c119ada1874871ee328c59fbee ] The gates are stored in 'hi3519_gate_clks', not 'hi3519_mux_clks'. This is also in line with how hisi_clk_register_gate() is called in the probe. Fixes: 224b3b262c52 ("clk: hisilicon: hi3519: add driver remove path and fi= x some issues") Signed-off-by: Christophe JAILLET Link: https://lore.kernel.org/r/c3f1877c9a0886fa35c949c8f0ef25547f284f18.17= 04912510.git.christophe.jaillet@wanadoo.fr Signed-off-by: Stephen Boyd Signed-off-by: Sasha Levin --- drivers/clk/hisilicon/clk-hi3519.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/clk/hisilicon/clk-hi3519.c b/drivers/clk/hisilicon/clk= -hi3519.c index ad0c7f350cf03..60d8a27a90824 100644 --- a/drivers/clk/hisilicon/clk-hi3519.c +++ b/drivers/clk/hisilicon/clk-hi3519.c @@ -130,7 +130,7 @@ static void hi3519_clk_unregister(struct platform_devic= e *pdev) of_clk_del_provider(pdev->dev.of_node); =20 hisi_clk_unregister_gate(hi3519_gate_clks, - ARRAY_SIZE(hi3519_mux_clks), + ARRAY_SIZE(hi3519_gate_clks), crg->clk_data); hisi_clk_unregister_mux(hi3519_mux_clks, ARRAY_SIZE(hi3519_mux_clks), --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id CEC481FB093; Sun, 24 Mar 2024 23:48:47 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324128; cv=none; b=VJ7YLShyJs1wRlZt6H6fcY78i+/z5TK95mPTtDBrynqwIg0ac/vCmhRJYwHrQgwuaZMvWabB8DBbXxXVVNTJDmbd1jpUTNRX6P0UACXNRYOLvIadY3EtO0z89Vi9hbMutnzalo/bj8QsUAIev+tRTqmQAcWDrHc5btT4+pKCt80= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324128; c=relaxed/simple; bh=7zVaDgT2dMSkrpsp3xzqYvEZpVYt/GwYB4YhIWzsABs=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=HF8+wygbkqM9a7SCag2WeUQ6HIf3WwkKyDrg2bML4fj1KX8epkb19m6mUu/1Z9mFfi3Sspae1wXF3TfpUYeufogcJ0UWDY6a5GxNSqzb1YKGvW4D01GjxyKaIM0vtfKnVhle9cbGTDWlooH7GxW7vw145wKreuAWh6ZoZwfuVwc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=jiJf0NDU; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="jiJf0NDU" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 183C7C43390; Sun, 24 Mar 2024 23:48:47 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324127; bh=7zVaDgT2dMSkrpsp3xzqYvEZpVYt/GwYB4YhIWzsABs=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=jiJf0NDUc7DjBlORm63rE193IlUw8dVcl4yc+m/a7p/vhlLeYz4XkoH0mlPAK0O/X t6NKl5yaxRulv55WaCb/RzpAQRJAvuHNjSrWr1dso1EEnEwia0bYx8PN5ieAC3YV9o ckhspUHv7une2FUIGujrhQvHaFbcnGZ1pzft5BM0GGSzi5POSs0yl2H0cUKgjfrAfO HSzKrOwuuSNYxX2XCpWuMCf93CzpPVCzwUqQv0lT+cpMPPxNTpalSjGNv+j4MGFWx3 Or2c0m5AOcCnWnsCfbEUwN5bIkiTmEty+NqK+L1ZvFiDjsf0WoBV2WNDHFjI6ewyYg ZUJPoakBrVOtw== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Fedor Pchelkin , Thierry Reding , Sasha Levin Subject: [PATCH 5.4 125/183] drm/tegra: put drm_gem_object ref on error in tegra_fb_create Date: Sun, 24 Mar 2024 19:45:38 -0400 Message-ID: <20240324234638.1355609-126-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Fedor Pchelkin [ Upstream commit 32e5a120a5105bce01561978ee55aee8e40ac0dc ] Inside tegra_fb_create(), drm_gem_object_lookup() increments ref count of the found object. But if the following size check fails then the last found object's ref count should be put there as the unreferencing loop can't detect this situation. Found by Linux Verification Center (linuxtesting.org). Fixes: de2ba664c30f ("gpu: host1x: drm: Add memory manager and fb") Signed-off-by: Fedor Pchelkin Signed-off-by: Thierry Reding Link: https://patchwork.freedesktop.org/patch/msgid/20231215093356.12067-1-= pchelkin@ispras.ru Signed-off-by: Sasha Levin --- drivers/gpu/drm/tegra/fb.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/gpu/drm/tegra/fb.c b/drivers/gpu/drm/tegra/fb.c index e34325c83d28e..361e67e4cd984 100644 --- a/drivers/gpu/drm/tegra/fb.c +++ b/drivers/gpu/drm/tegra/fb.c @@ -155,6 +155,7 @@ struct drm_framebuffer *tegra_fb_create(struct drm_devi= ce *drm, =20 if (gem->size < size) { err =3D -EINVAL; + drm_gem_object_put(gem); goto unreference; } =20 --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 0652B229BE4; Sun, 24 Mar 2024 23:48:48 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324130; cv=none; b=p64Eb7ElusAC8DaGIKXktLzJjDHNxHJNROygF2RuzgElLRqgT9Iv+MUKi2FmdypAS84WPVg4hnFCu1+KZGVXiU9XGB533ixi0Lm0eXXm7/S9yJgAZWhP9nhACf4wZIviIrIeA7RA7FjJZgx0s2KHvBwc3Njwnypgx+1va73sc4I= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324130; c=relaxed/simple; bh=7MrEm1QVokqmLB43b20sXLc56N+gXSom4+OqZ57+/do=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=ToQSjpOjhujLOtOj7vxxC4JrYeuyT4O03qPCtldd72UV8abZmxG084goQDVo3xicGJ8yF8KtXc9rRAjFBvKfVIHysuqoD+4IjD5Ff/FHvnJn/W554VqV52DYhod5jhAd5Q9W20z2BSoutCq43cL/k1LNaFx6NS7p3Zp+ByjL54g= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=W+xABXX6; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="W+xABXX6" Received: by smtp.kernel.org (Postfix) with ESMTPSA id F39EAC433C7; Sun, 24 Mar 2024 23:48:47 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324128; bh=7MrEm1QVokqmLB43b20sXLc56N+gXSom4+OqZ57+/do=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=W+xABXX6FK98LaOJ0wMt1E81AP2zkRNrFTvMG9gJ4iZZlHzrOam3b95LyF0P1yhxC KeOdkdnPTOZxFUeA5dqb4wgVL8fcOHWSHpIJlv9ijkU08NCSOQ+hb8fAcQkooAzI0/ aQgY2cNE96X7o1z4X1suY4E2rQcBtdEAqHNjQmiMnKGEawhz+u4II+DtXp1KGreWAf z9a7L7R1dtENvp/yZVx9ZRQEkx//XKhGnPwFxwTHnfk7UxUcsgWGBm0DAnLfnyYaTR 5ZkEMt0QQZvuXfM2VFwzjy65IOR576ssnpDgTCWzk87O1g/4d2XUVPIokjENbBfEsO qbMgs5xwEex/w== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Peter Griffin , Lee Jones , Sasha Levin Subject: [PATCH 5.4 126/183] mfd: syscon: Call of_node_put() only when of_parse_phandle() takes a ref Date: Sun, 24 Mar 2024 19:45:39 -0400 Message-ID: <20240324234638.1355609-127-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Peter Griffin [ Upstream commit d2b0680cf3b05490b579e71b0df6e07451977745 ] of_parse_phandle() returns a device_node with refcount incremented, which the callee needs to call of_node_put() on when done. We should only call of_node_put() when the property argument is provided though as otherwise nothing has taken a reference on the node. Fixes: 45330bb43421 ("mfd: syscon: Allow property as NULL in syscon_regmap_= lookup_by_phandle") Signed-off-by: Peter Griffin Link: https://lore.kernel.org/r/20240220115012.471689-2-peter.griffin@linar= o.org Signed-off-by: Lee Jones Signed-off-by: Sasha Levin --- drivers/mfd/syscon.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/mfd/syscon.c b/drivers/mfd/syscon.c index 660723276481c..9ec90ce12f4d7 100644 --- a/drivers/mfd/syscon.c +++ b/drivers/mfd/syscon.c @@ -219,7 +219,9 @@ struct regmap *syscon_regmap_lookup_by_phandle(struct d= evice_node *np, return ERR_PTR(-ENODEV); =20 regmap =3D syscon_node_to_regmap(syscon_np); - of_node_put(syscon_np); + + if (property) + of_node_put(syscon_np); =20 return regmap; } --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C8FB0229BE2; Sun, 24 Mar 2024 23:48:49 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324129; cv=none; b=MMud+AnCnj5b05XSfj46ZD8jPxyJ6VDmIPzPlZpmhacvC5DqjmDRgCpRJfQQLjLwIORziMP9PpoF7kMetAuJiilirMQ8EDERhgCumYjkubEIo1Hdal02x2AVeBycc9ZW2cnH2OwyoPjPT3tPrJq9K79OseiO5tqudq0sZ4g7i7w= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324129; c=relaxed/simple; bh=SivIxMd8V2PKFtctNm/0bRHV2kuANutFT4M8RmAb+n0=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=b1pFRyCqikH5tEO53bbAlw4cxz/BVSi4sbiru57j/E411rqwPZbBedRJ2Z1HM3uBc5Zc8x2ria/2Wl0F97aJ06XXhvYYaQU3Iphb0SUMkMM4qRt/4zjvdpn/s3lgSqf1VVQIffpqWNwKTvCBdD4N56zOWiH+3l2N91EEDNbR3cg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=qy1QBpp8; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="qy1QBpp8" Received: by smtp.kernel.org (Postfix) with ESMTPSA id DEE64C433F1; Sun, 24 Mar 2024 23:48:48 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324129; bh=SivIxMd8V2PKFtctNm/0bRHV2kuANutFT4M8RmAb+n0=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=qy1QBpp8Ng9LlbP2wAhzt/4EHQ1lHJIm9RmSf28TSpJ6JOF43be4zrPozOHFTIvi4 8ZiScElp93e5RsJ4hNzc7tQ6bn5wBSMrBRkmHTjYVl8ax5upqHOGYYizG0LcE16P2a F8/8f6u81dR7p4JxkNkSNk5EdK1VG4u7wmRQXcex3JotVbQe4QjRUlko4b4PPPRrF5 2or3CUZfwLPOOKQtfmkwkxeAENWyGNP9OOSOyScgOQpUsjuAQSgcpjRiPdMcGChhDD egAon85hFmFOugJ26ATVZH+9tdiofQot0DkgWKjRvIzogox9hZx/M8T/0VX9HH0cGz YWsB4/eKq8JPA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Peter Griffin , Lee Jones , Sasha Levin Subject: [PATCH 5.4 127/183] mfd: altera-sysmgr: Call of_node_put() only when of_parse_phandle() takes a ref Date: Sun, 24 Mar 2024 19:45:40 -0400 Message-ID: <20240324234638.1355609-128-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Peter Griffin [ Upstream commit e28c28a34ee9fa2ea671a20e5e7064e6220d55e7 ] of_parse_phandle() returns a device_node with refcount incremented, which the callee needs to call of_node_put() on when done. We should only call of_node_put() when the property argument is provided though as otherwise nothing has taken a reference on the node. Fixes: f36e789a1f8d ("mfd: altera-sysmgr: Add SOCFPGA System Manager") Signed-off-by: Peter Griffin Link: https://lore.kernel.org/r/20240220115012.471689-4-peter.griffin@linar= o.org Signed-off-by: Lee Jones Signed-off-by: Sasha Levin --- drivers/mfd/altera-sysmgr.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/mfd/altera-sysmgr.c b/drivers/mfd/altera-sysmgr.c index d2a13a547a3ca..5610a5d9fad12 100644 --- a/drivers/mfd/altera-sysmgr.c +++ b/drivers/mfd/altera-sysmgr.c @@ -109,7 +109,9 @@ struct regmap *altr_sysmgr_regmap_lookup_by_phandle(str= uct device_node *np, =20 dev =3D driver_find_device_by_of_node(&altr_sysmgr_driver.driver, (void *)sysmgr_np); - of_node_put(sysmgr_np); + if (property) + of_node_put(sysmgr_np); + if (!dev) return ERR_PTR(-EPROBE_DEFER); =20 --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 4C715229BED; Sun, 24 Mar 2024 23:48:51 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324131; cv=none; b=uahro3/1Z4UJmL8fVGM4Yb4E0L34Ut6vZvkk9+FxozBQ3Rx76PXCyWpZ4xQv8f0MHoH91WWCEDsoTBv8RcNZXtCwPeBhzKfrl5Vxz1TBe3yJI7gglMSt3ARutIsh49M7dH5nue9+NZJ9DHNQeZcNXAhewEdHVODJqe5mnOWaGO4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324131; c=relaxed/simple; bh=slAMw1Km2rpZeovsMLkrSqOofhvPEAZcfBzpGuxpwpE=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=YoIdvfJmsAiFbGyIdruagfjzG9mR428FAfw2OXRPvjZc2bDauB8Zinn6bwSkBzAxFuXKil3B14Mnb9wcBlCjwzj5ENynxg1eSYU6qbx3CII3NUGYNnYgaHI2EJ7ybroQbw3bGMXr2S6k++Q6CD4MwcxcwaA98dA/bBM9QVh7p4w= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=GZKEf+rc; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="GZKEf+rc" Received: by smtp.kernel.org (Postfix) with ESMTPSA id E99B2C43394; Sun, 24 Mar 2024 23:48:49 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324131; bh=slAMw1Km2rpZeovsMLkrSqOofhvPEAZcfBzpGuxpwpE=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=GZKEf+rcN1F6bxYhd2Vu6SJqQw1m3zKrM7eosz1xt1nGz5BF1nDq2oIHtZT6rElCB 7lHqA9RBtE/LLLAwH9XQCdClKZ8hlTLxGhF7OwCeepnfmHtWy2c8VbMhUhBeRbFZaK Q5CjzRre/VR6Tr4jAVzo461eWlXkbvDQYuHYHaWEsc22GLIVQPPkLHBH6E+L0YxcNw PbU9kpch2TcZjt3D9GYnzY6y/j4RHXOFq7ar7uOf9SaLuW1DSH1hoH86p67BMXqKiX ss7J+zWgGbmXYnft2Mpw9iX3qxGUPqwWlg7f5Wt10YuYA/sA9hgkSFzNBepUSjvuDf ya5PSwfOBv9Sg== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Arnd Bergmann , Ard Biesheuvel , Herbert Xu , Sasha Levin Subject: [PATCH 5.4 128/183] crypto: arm/sha - fix function cast warnings Date: Sun, 24 Mar 2024 19:45:41 -0400 Message-ID: <20240324234638.1355609-129-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Arnd Bergmann [ Upstream commit 53cc9baeb9bc2a187eb9c9790d30995148852b12 ] clang-16 warns about casting between incompatible function types: arch/arm/crypto/sha256_glue.c:37:5: error: cast from 'void (*)(u32 *, const= void *, unsigned int)' (aka 'void (*)(unsigned int *, const void *, unsign= ed int)') to 'sha256_block_fn *' (aka 'void (*)(struct sha256_state *, cons= t unsigned char *, int)') converts to incompatible function type [-Werror,-= Wcast-function-type-strict] 37 | (sha256_block_fn *)sha256_block_dat= a_order); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~= ~~~~~~~ arch/arm/crypto/sha512-glue.c:34:3: error: cast from 'void (*)(u64 *, const= u8 *, int)' (aka 'void (*)(unsigned long long *, const unsigned char *, in= t)') to 'sha512_block_fn *' (aka 'void (*)(struct sha512_state *, const uns= igned char *, int)') converts to incompatible function type [-Werror,-Wcast= -function-type-strict] 34 | (sha512_block_fn *)sha512_block_data_order); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Fix the prototypes for the assembler functions to match the typedef. The code already relies on the digest being the first part of the state structure, so there is no change in behavior. Fixes: c80ae7ca3726 ("crypto: arm/sha512 - accelerated SHA-512 using ARM ge= neric ASM and NEON") Fixes: b59e2ae3690c ("crypto: arm/sha256 - move SHA-224/256 ASM/NEON implem= entation to base layer") Signed-off-by: Arnd Bergmann Reviewed-by: Ard Biesheuvel Signed-off-by: Herbert Xu Signed-off-by: Sasha Levin --- arch/arm/crypto/sha256_glue.c | 13 +++++-------- arch/arm/crypto/sha512-glue.c | 12 +++++------- 2 files changed, 10 insertions(+), 15 deletions(-) diff --git a/arch/arm/crypto/sha256_glue.c b/arch/arm/crypto/sha256_glue.c index 215497f011f23..cb3be0c15a044 100644 --- a/arch/arm/crypto/sha256_glue.c +++ b/arch/arm/crypto/sha256_glue.c @@ -25,8 +25,8 @@ =20 #include "sha256_glue.h" =20 -asmlinkage void sha256_block_data_order(u32 *digest, const void *data, - unsigned int num_blks); +asmlinkage void sha256_block_data_order(struct sha256_state *state, + const u8 *data, int num_blks); =20 int crypto_sha256_arm_update(struct shash_desc *desc, const u8 *data, unsigned int len) @@ -34,23 +34,20 @@ int crypto_sha256_arm_update(struct shash_desc *desc, c= onst u8 *data, /* make sure casting to sha256_block_fn() is safe */ BUILD_BUG_ON(offsetof(struct sha256_state, state) !=3D 0); =20 - return sha256_base_do_update(desc, data, len, - (sha256_block_fn *)sha256_block_data_order); + return sha256_base_do_update(desc, data, len, sha256_block_data_order); } EXPORT_SYMBOL(crypto_sha256_arm_update); =20 static int crypto_sha256_arm_final(struct shash_desc *desc, u8 *out) { - sha256_base_do_finalize(desc, - (sha256_block_fn *)sha256_block_data_order); + sha256_base_do_finalize(desc, sha256_block_data_order); return sha256_base_finish(desc, out); } =20 int crypto_sha256_arm_finup(struct shash_desc *desc, const u8 *data, unsigned int len, u8 *out) { - sha256_base_do_update(desc, data, len, - (sha256_block_fn *)sha256_block_data_order); + sha256_base_do_update(desc, data, len, sha256_block_data_order); return crypto_sha256_arm_final(desc, out); } EXPORT_SYMBOL(crypto_sha256_arm_finup); diff --git a/arch/arm/crypto/sha512-glue.c b/arch/arm/crypto/sha512-glue.c index 8775aa42bbbe8..1a16b98ec1085 100644 --- a/arch/arm/crypto/sha512-glue.c +++ b/arch/arm/crypto/sha512-glue.c @@ -25,27 +25,25 @@ MODULE_ALIAS_CRYPTO("sha512"); MODULE_ALIAS_CRYPTO("sha384-arm"); MODULE_ALIAS_CRYPTO("sha512-arm"); =20 -asmlinkage void sha512_block_data_order(u64 *state, u8 const *src, int blo= cks); +asmlinkage void sha512_block_data_order(struct sha512_state *state, + u8 const *src, int blocks); =20 int sha512_arm_update(struct shash_desc *desc, const u8 *data, unsigned int len) { - return sha512_base_do_update(desc, data, len, - (sha512_block_fn *)sha512_block_data_order); + return sha512_base_do_update(desc, data, len, sha512_block_data_order); } =20 static int sha512_arm_final(struct shash_desc *desc, u8 *out) { - sha512_base_do_finalize(desc, - (sha512_block_fn *)sha512_block_data_order); + sha512_base_do_finalize(desc, sha512_block_data_order); return sha512_base_finish(desc, out); } =20 int sha512_arm_finup(struct shash_desc *desc, const u8 *data, unsigned int len, u8 *out) { - sha512_base_do_update(desc, data, len, - (sha512_block_fn *)sha512_block_data_order); + sha512_base_do_update(desc, data, len, sha512_block_data_order); return sha512_arm_final(desc, out); } =20 --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 34B50229BFC; Sun, 24 Mar 2024 23:48:52 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324133; cv=none; b=tyR5zJv28SAyOsyCeBaRqbT1E1yZRMzwKuPmEaWfa9SXoXCEglYqA0Wfg3mQKTCbvHY0zs3vGBFedRjE+lIzDL8vtiEpF+6YjEbOZFdiXT6V/uWn9C7xKy5UGHNBuK56yNMrrPF17rJP4xApG2np67u5iOF6QV8nCpSn/qZsNZU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324133; c=relaxed/simple; bh=MA3h5jTrsIKATIHVkASldqtCcIv3oJwBvd1pfRey8s0=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=ts+5B8F2vllQDzBtbHuP+Zq7zOJH40GC0AgLInN6QOKRewF+QK9PXw5IXgN6RDJdFyYQfE7bgjdoGZQBVjNLEOc++mwAoe1OnFelrFBo6wjxGqc3PHz8w+MAFWdnM/wbnDotObcV1fcca/ekwq/iHNAxBvJmP6WuO2dFToQ5uiY= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=l/lySQEG; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="l/lySQEG" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 71D64C43390; Sun, 24 Mar 2024 23:48:51 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324132; bh=MA3h5jTrsIKATIHVkASldqtCcIv3oJwBvd1pfRey8s0=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=l/lySQEGZy0gl2AWmPbVC26yWzvj+Vt4tXnRFEQhMRLJNU8OCb5Xs2yXGR8K+QcdF Oy159PfHUStgDa8X0IPYiDKfFKK0j3YUtG7g+ITJgutyaVuVp97f0QTWfiDKKU70r6 rgW0HYc0FooRgpbStAlZCmwBvTIgiIHfNKKHISUpZL9/flhKoFhlGcdz8P7e2F+6XE Yed1J2REg838nUQd+0xPWamXJFpn5rcJSMbXPiEKoUpkldngNMWq0+bgqPlSHsFUxq 6FkASqixQg/Sva7sS7Hi7dyLNOYmqSnN4v87mqnIq4fhJxyiwvW7Hrm1ih46G5b2/K YnyN21R+TuGiw== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Baruch Siach , Miquel Raynal , Sasha Levin Subject: [PATCH 5.4 129/183] mtd: maps: physmap-core: fix flash size larger than 32-bit Date: Sun, 24 Mar 2024 19:45:42 -0400 Message-ID: <20240324234638.1355609-130-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Baruch Siach [ Upstream commit 3884f03edd34887514a0865a80769cd5362d5c3b ] mtd-ram can potentially be larger than 4GB. get_bitmask_order() uses fls() that is not guaranteed to work with values larger than 32-bit. Specifically on aarch64 fls() returns 0 when all 32 LSB bits are clear. Use fls64() instead. Fixes: ba32ce95cbd987 ("mtd: maps: Merge gpio-addr-flash.c into physmap-cor= e.c") Signed-off-by: Baruch Siach Signed-off-by: Miquel Raynal Link: https://lore.kernel.org/linux-mtd/9fbf3664ce00f8b07867f1011834015f21d= 162a5.1707388458.git.baruch@tkos.co.il Signed-off-by: Sasha Levin --- drivers/mtd/maps/physmap-core.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/mtd/maps/physmap-core.c b/drivers/mtd/maps/physmap-cor= e.c index e4f72b2df8039..fa7e1c0b70c64 100644 --- a/drivers/mtd/maps/physmap-core.c +++ b/drivers/mtd/maps/physmap-core.c @@ -505,7 +505,7 @@ static int physmap_flash_probe(struct platform_device *= dev) if (!info->maps[i].phys) info->maps[i].phys =3D res->start; =20 - info->win_order =3D get_bitmask_order(resource_size(res)) - 1; + info->win_order =3D fls64(resource_size(res)) - 1; info->maps[i].size =3D BIT(info->win_order + (info->gpios ? info->gpios->ndescs : 0)); --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 314C2229C04; Sun, 24 Mar 2024 23:48:53 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324134; cv=none; b=jTLPivObf37tvYzjBqeYnSJdGfeao1CuYKsUKeknlZIGIyHk9QICzYNTJEiYnZZd95NcdQIMiSws1LGnJsgmQNO2ajRDhgy3gRXZd1P/NpzT6pqZnGah2ustcCCACLbZWtP6EzZ27PR2c0xH+ysKN8UCXbm1Yxgol6Tsrp2zkMQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324134; c=relaxed/simple; bh=AzJDd6RMY3BBgLb2b4nm2mnDH2oSiiGl+bC7buMZM0w=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=SjQm6kSUhhm1xmTnG5oI8VN4LtYGjdds/Hjxfo7pNlRA0Bmm9Y39xpcAhydCHQhyAjiOVty3/W+g/sUicCMIVEqdFp878H86Afnz9cVXJjwruoD3w+GG/CcFs/VgbZ7fmpcAxDPedpiZM8kuAVfF7O4zOUQ/dR49NgzvYpZDixw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=vOqsvwZp; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="vOqsvwZp" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 5D121C43399; Sun, 24 Mar 2024 23:48:52 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324133; bh=AzJDd6RMY3BBgLb2b4nm2mnDH2oSiiGl+bC7buMZM0w=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=vOqsvwZpoHeh+O/+jDgX34Hfhrf2vySlYNhGh5Ga+PW3uyhe3gGq1oir+ynurA95u 2jjDezagnGwdjoLgqwzoNjPLEskgdr037ExRHJPp+YskhGMT/KoGnvjywzogjyWyM7 5WpDK/H89uAvBQYEHMZ70Z+fFvv+JED88T+xHY/jCEZCQahcH8+idVGerVv6Dy5XMv /G28JO+FZqi3QxrHghfP0F0WCjt+wmDoo1I0ddGv0qwHLrfIClc8Vun4HAI5b7Dxa9 mQoRL/HGp7h/Bp/Y/WM1EZAweUoHnrpVuFsQynUuGWG8pJJBfnrfB9lHgj7mEoQtRe MmoqzpO9GgWAQ== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Arnd Bergmann , Miquel Raynal , Sasha Levin Subject: [PATCH 5.4 130/183] mtd: rawnand: lpc32xx_mlc: fix irq handler prototype Date: Sun, 24 Mar 2024 19:45:43 -0400 Message-ID: <20240324234638.1355609-131-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Arnd Bergmann [ Upstream commit 347b828882e6334690e7003ce5e2fe5f233dc508 ] clang-16 warns about mismatched function prototypes: drivers/mtd/nand/raw/lpc32xx_mlc.c:783:29: error: cast from 'irqreturn_t (*= )(int, struct lpc32xx_nand_host *)' (aka 'enum irqreturn (*)(int, struct lp= c32xx_nand_host *)') to 'irq_handler_t' (aka 'enum irqreturn (*)(int, void = *)') converts to incompatible function type [-Werror,-Wcast-function-type-s= trict] Change the interrupt handler to the normal way of just passing a void* pointer and converting it inside the function.. Fixes: 70f7cb78ec53 ("mtd: add LPC32xx MLC NAND driver") Signed-off-by: Arnd Bergmann Signed-off-by: Miquel Raynal Link: https://lore.kernel.org/linux-mtd/20240213100146.455811-1-arnd@kernel= .org Signed-off-by: Sasha Levin --- drivers/mtd/nand/raw/lpc32xx_mlc.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/drivers/mtd/nand/raw/lpc32xx_mlc.c b/drivers/mtd/nand/raw/lpc3= 2xx_mlc.c index 78b31f845c50a..a7d0a76eee7f4 100644 --- a/drivers/mtd/nand/raw/lpc32xx_mlc.c +++ b/drivers/mtd/nand/raw/lpc32xx_mlc.c @@ -304,8 +304,9 @@ static int lpc32xx_nand_device_ready(struct nand_chip *= nand_chip) return 0; } =20 -static irqreturn_t lpc3xxx_nand_irq(int irq, struct lpc32xx_nand_host *hos= t) +static irqreturn_t lpc3xxx_nand_irq(int irq, void *data) { + struct lpc32xx_nand_host *host =3D data; uint8_t sr; =20 /* Clear interrupt flag by reading status */ @@ -778,7 +779,7 @@ static int lpc32xx_nand_probe(struct platform_device *p= dev) goto release_dma_chan; } =20 - if (request_irq(host->irq, (irq_handler_t)&lpc3xxx_nand_irq, + if (request_irq(host->irq, &lpc3xxx_nand_irq, IRQF_TRIGGER_HIGH, DRV_NAME, host)) { dev_err(&pdev->dev, "Error requesting NAND IRQ\n"); res =3D -ENXIO; --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 1C4B3229C07; Sun, 24 Mar 2024 23:48:54 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324135; cv=none; b=qPzYrGHvO28+fS+WWbGb5q+1PpaOjql0nDAezKiMtpoD/5c2Rh/HWorRJvi9NgbkWOCvt2lnT5zr4Tc6iMNskpidVDsDURQW3InT8ycnzoVB53Jmpr6R7pRJGwPoB1Mh81CMBzkgUPxXvzDeG8kf58Hhtzz1T/Q1M3B2usgVhx0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324135; c=relaxed/simple; bh=XwLDNVI86IIwGddSOsCOTHlYxsyUqTfeAEzQBytVP1E=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=TShfYmgKXLjWHmSlqfK9kOV8bG405MUhiZP+a+Pjk1rzhqcs875LtkL5YgqJfBXDabCUZ1a9K5W2DyPImo85M1kVvAxbBQVsmfS6saF63YwnFHZ0FoN4+cxglOG8eE12cy/V3UGzrpAB1JvgZqHZYqcEalA3nUeBM7G8gguNvjI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=nV+jfXxV; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="nV+jfXxV" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 59E43C43390; Sun, 24 Mar 2024 23:48:53 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324134; bh=XwLDNVI86IIwGddSOsCOTHlYxsyUqTfeAEzQBytVP1E=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=nV+jfXxVFzQOXGuQaxWR/crwwOF+VV6mKq6o6tIQeHLs7f3Fky1cGaBPd8XdJ/Gl0 49XtFFR9NuEbW15twegrtWhK6TNcL8j3brtN8addCWv7YGMNNYYq0PfxbA/OGD2FLp 1nZ5rq3eX271VRqb1+I+yE6bUZ+jCXjdNoSVW+rcX0e1oah5sKKXDhYUmOPDGrDEdC /cQ8bYUArUlF5LaMKfH9QtBisHPt6Bfe/wH4bYjK75C0+FPeCAmVCat7zMXgud6yS7 ooJSOOC+0kU1zs0OrvwJDUYm/kZ5xoyhmZ23Bh2ivljbs/ocCNpk/SUtwGHDKFntk/ 2H03h0QOHgT3A== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Jerome Brunet , Mark Brown , Sasha Levin Subject: [PATCH 5.4 131/183] ASoC: meson: axg-tdm-interface: fix mclk setup without mclk-fs Date: Sun, 24 Mar 2024 19:45:44 -0400 Message-ID: <20240324234638.1355609-132-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Jerome Brunet [ Upstream commit e3741a8d28a1137f8b19ae6f3d6e3be69a454a0a ] By default, when mclk-fs is not provided, the tdm-interface driver requests an MCLK that is 4x the bit clock, SCLK. However there is no justification for this: * If the codec needs MCLK for its operation, mclk-fs is expected to be set according to the codec requirements. * If the codec does not need MCLK the minimum is 2 * SCLK, because this is minimum the divider between SCLK and MCLK can do. Multiplying by 4 may cause problems because the PLL limit may be reached sooner than it should, so use 2x instead. Fixes: d60e4f1e4be5 ("ASoC: meson: add tdm interface driver") Signed-off-by: Jerome Brunet Link: https://msgid.link/r/20240223175116.2005407-2-jbrunet@baylibre.com Signed-off-by: Mark Brown Signed-off-by: Sasha Levin --- sound/soc/meson/axg-tdm-interface.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sound/soc/meson/axg-tdm-interface.c b/sound/soc/meson/axg-tdm-= interface.c index f5a431b8de6c3..34aff050caf25 100644 --- a/sound/soc/meson/axg-tdm-interface.c +++ b/sound/soc/meson/axg-tdm-interface.c @@ -266,8 +266,8 @@ static int axg_tdm_iface_set_sclk(struct snd_soc_dai *d= ai, srate =3D iface->slots * iface->slot_width * params_rate(params); =20 if (!iface->mclk_rate) { - /* If no specific mclk is requested, default to bit clock * 4 */ - clk_set_rate(iface->mclk, 4 * srate); + /* If no specific mclk is requested, default to bit clock * 2 */ + clk_set_rate(iface->mclk, 2 * srate); } else { /* Check if we can actually get the bit clock from mclk */ if (iface->mclk_rate % srate) { --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 7A0B6229C11; Sun, 24 Mar 2024 23:48:55 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324136; cv=none; b=Ki244qSZ8kvlLyxYNieuhBD69h9ec5AWJB1lzqpLRVqoIWyK5/O1Ejk/7g2bm8pZUYjZ7HpeN34SXVfzoxqfowK+6Y6Mk/H/RQ8liJsW/QYpHEgVL1WX0SrN1Kim61Azci8ylrztXwznIXPvW39H56eB/FPOj7HvvQRJNxVkGeM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324136; c=relaxed/simple; bh=4z44WqP148c/NqMRodDAXC6Z65nxiKYR7xAvPBfIzd4=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=vDEIrYHBPEIrFevPPmjjFIdQGBgHWhiCOYgTDNVvmKcI/icp5lle/AfEqHuTAZxgcKbXPHjWllqyUrGO/KN9rxKDWZUPc0JyJF98XMOqBIbaArFXVzb0/cEeVHQ/qfK7FBqEp4eenaHFY/IbvlwvtgNf+Gz6jobWuYhb7f9HQ+U= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=oNN8d617; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="oNN8d617" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 418D7C433F1; Sun, 24 Mar 2024 23:48:54 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324135; bh=4z44WqP148c/NqMRodDAXC6Z65nxiKYR7xAvPBfIzd4=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=oNN8d617ZhkCTMQ/u7mevgnwyZhywZGJGtKuCGUW2Jo3v3aDOYMwYtcJeAgBBXoWf xlBY/SAF/rCfq3ORN59rB9a0AAWJzDY5mj+yi4G/V6N+W8L1HBS/ciseozUppfeUrm czIg+tukaxph3rk3Bi38J2x6Zui3YXwg5mIYUTx0Hujd/YIP7WLQ7SE93a/5Wav15V zSk+z8EQpIvo8/fKBoT99sGOlbT73ot3FJ2pesIis+9VX4BcDO6K13BAqaRzF8udiZ 1vSyKMQuNIwHcAyzvC7ZGHepPBkSKHvLH4O9rCG/ssxQICNxC964fFtdOiquRwRheZ Zw186atTxqTEg== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Srinivasan Shanmugam , Jammy Zhou , =?UTF-8?q?Christian=20K=C3=B6nig?= , Alex Deucher , Sasha Levin Subject: [PATCH 5.4 132/183] drm/amdgpu: Fix missing break in ATOM_ARG_IMM Case of atom_get_src_int() Date: Sun, 24 Mar 2024 19:45:45 -0400 Message-ID: <20240324234638.1355609-133-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable From: Srinivasan Shanmugam [ Upstream commit 7cf1ad2fe10634238b38442a851d89514cb14ea2 ] Missing break statement in the ATOM_ARG_IMM case of a switch statement, adds the missing break statement, ensuring that the program's control flow is as intended. Fixes the below: drivers/gpu/drm/amd/amdgpu/atom.c:323 atom_get_src_int() warn: ignoring unr= eachable code. Fixes: d38ceaf99ed0 ("drm/amdgpu: add core driver (v4)") Cc: Jammy Zhou Cc: Christian K=C3=B6nig Cc: Alex Deucher Signed-off-by: Srinivasan Shanmugam Reviewed-by: Alex Deucher Signed-off-by: Alex Deucher Signed-off-by: Sasha Levin --- drivers/gpu/drm/amd/amdgpu/atom.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/amd/amdgpu/atom.c b/drivers/gpu/drm/amd/amdgpu= /atom.c index cae426c7c0863..e1503b52519a0 100644 --- a/drivers/gpu/drm/amd/amdgpu/atom.c +++ b/drivers/gpu/drm/amd/amdgpu/atom.c @@ -308,7 +308,7 @@ static uint32_t atom_get_src_int(atom_exec_context *ctx= , uint8_t attr, DEBUG("IMM 0x%02X\n", val); return val; } - return 0; + break; case ATOM_ARG_PLL: idx =3D U8(*ptr); (*ptr)++; --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 7B049229C14; Sun, 24 Mar 2024 23:48:56 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324137; cv=none; b=VtEXlyuXFXwr5aBo5GIz9DgxBP+EIDqVHgsaBxCG3tMlxVPdD5LdxwPwEu3zQ/X1GD947xI6b+Ut4zLkaT9CFwuYJGfpj0PYr9253vkcXaqKDBkwHhPN8BBhW9BevT55EU3L+lRwpqR5bZnRJ+c9AMFZpT1m1e70TxKe2Af0QzE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324137; c=relaxed/simple; bh=zIzrS9FnuADVM5W+mS2X8Ece0Bn7nG81SCezXMUw+EM=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=PSqa6/wClBHLRzR8NiSB/yQeyT/nW2Er0IQAgxsVjF/n+HQ6U4D6ztO7PayDU+5vs7y3IJGlL5qLiDgvIS+ReOZ/lVhjgNhCAKTA7CnAEbT1UdBGBSKPrl/TtrwbzySHBfp4yADFYFIaAlz7juRDqrjAeIAnrLzb/nVVEWXzeRo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=tNba+4Bc; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="tNba+4Bc" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 9FBB8C43394; Sun, 24 Mar 2024 23:48:55 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324136; bh=zIzrS9FnuADVM5W+mS2X8Ece0Bn7nG81SCezXMUw+EM=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=tNba+4BcJMtR0RZdKwZiIIToZTyg/iZw5bWCu1NTecXC27OeTs4gjccKdd4fMuSZM 7OzCSCzKL7LvHH4Xnq3PMoe3tSMGoEPVCk6lsBqhXZkIcpPzc0ByJQT9I03PKcNDJJ VMSoUnCVcUGxWllO0T/L2u/HK/EGRxvwc+jTYG6v9io4vueU9RpGO2XSp2iETB2D91 0U5f0+zzlj2XR4b+YEOZqe5FPacoDFPvxVslhvN47w/1+MZ6/yJxwYyelz6pTU1E8j 4azgU3TRpGIdfeXOLf7dCqY4UXHH8YoC6OSBBJW1I9pYBTC0wkelN4ncLVQdr8LgjJ sviodx1Z3Qwkg== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Edward Adam Davis , syzbot+ce750e124675d4599449@syzkaller.appspotmail.com, Hans Verkuil , Sasha Levin Subject: [PATCH 5.4 133/183] media: pvrusb2: fix uaf in pvr2_context_set_notify Date: Sun, 24 Mar 2024 19:45:46 -0400 Message-ID: <20240324234638.1355609-134-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Edward Adam Davis [ Upstream commit 0a0b79ea55de8514e1750884e5fec77f9fdd01ee ] [Syzbot reported] BUG: KASAN: slab-use-after-free in pvr2_context_set_notify+0x2c4/0x310 driv= ers/media/usb/pvrusb2/pvrusb2-context.c:35 Read of size 4 at addr ffff888113aeb0d8 by task kworker/1:1/26 CPU: 1 PID: 26 Comm: kworker/1:1 Not tainted 6.8.0-rc1-syzkaller-00046-gf1a= 27f081c1f #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Goo= gle 01/25/2024 Workqueue: usb_hub_wq hub_event Call Trace: __dump_stack lib/dump_stack.c:88 [inline] dump_stack_lvl+0xd9/0x1b0 lib/dump_stack.c:106 print_address_description mm/kasan/report.c:377 [inline] print_report+0xc4/0x620 mm/kasan/report.c:488 kasan_report+0xda/0x110 mm/kasan/report.c:601 pvr2_context_set_notify+0x2c4/0x310 drivers/media/usb/pvrusb2/pvrusb2-cont= ext.c:35 pvr2_context_notify drivers/media/usb/pvrusb2/pvrusb2-context.c:95 [inline] pvr2_context_disconnect+0x94/0xb0 drivers/media/usb/pvrusb2/pvrusb2-contex= t.c:272 Freed by task 906: kasan_save_stack+0x33/0x50 mm/kasan/common.c:47 kasan_save_track+0x14/0x30 mm/kasan/common.c:68 kasan_save_free_info+0x3f/0x60 mm/kasan/generic.c:640 poison_slab_object mm/kasan/common.c:241 [inline] __kasan_slab_free+0x106/0x1b0 mm/kasan/common.c:257 kasan_slab_free include/linux/kasan.h:184 [inline] slab_free_hook mm/slub.c:2121 [inline] slab_free mm/slub.c:4299 [inline] kfree+0x105/0x340 mm/slub.c:4409 pvr2_context_check drivers/media/usb/pvrusb2/pvrusb2-context.c:137 [inline] pvr2_context_thread_func+0x69d/0x960 drivers/media/usb/pvrusb2/pvrusb2-cont= ext.c:158 [Analyze] Task A set disconnect_flag =3D !0, which resulted in Task B's condition bei= ng met and releasing mp, leading to this issue. [Fix] Place the disconnect_flag assignment operation after all code in pvr2_conte= xt_disconnect() to avoid this issue. Reported-and-tested-by: syzbot+ce750e124675d4599449@syzkaller.appspotmail.c= om Fixes: e5be15c63804 ("V4L/DVB (7711): pvrusb2: Fix race on module unload") Signed-off-by: Edward Adam Davis Signed-off-by: Hans Verkuil Signed-off-by: Sasha Levin --- drivers/media/usb/pvrusb2/pvrusb2-context.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/media/usb/pvrusb2/pvrusb2-context.c b/drivers/media/us= b/pvrusb2/pvrusb2-context.c index 58f2f3ff10ee2..73c95ba2328a4 100644 --- a/drivers/media/usb/pvrusb2/pvrusb2-context.c +++ b/drivers/media/usb/pvrusb2/pvrusb2-context.c @@ -267,9 +267,9 @@ static void pvr2_context_exit(struct pvr2_context *mp) void pvr2_context_disconnect(struct pvr2_context *mp) { pvr2_hdw_disconnect(mp->hdw); - mp->disconnect_flag =3D !0; if (!pvr2_context_shutok()) pvr2_context_notify(mp); + mp->disconnect_flag =3D !0; } =20 =20 --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 7773B229C13; Sun, 24 Mar 2024 23:48:57 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324137; cv=none; b=i8/J2Ih0f9nWRL2sqNaGOyuP1942SL1aprjQJHeS78utonHE+HKy17Edhu4AHp461cK8sg+vWXdbJMS1/W2msqWkb/D8sJRrhrVtRol1E/Tj7/++asLYyS2jBExyk7XwlKxhnrHwPWQOpcaBy2DTwgCrKivDNQ2j3AHNdgpVQeY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324137; c=relaxed/simple; bh=EpkfoWx72jhMfIWXfpdojzGNUtDam6OnAiKzo5ntHS0=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=qH0O1qBmCYY+iTtsVQKcCpxbdl+yUXNhY2LbuazCPBPadV3DHCHgxmTrwEZUsJL5jQ6uAPBdmJ9qZUq37xB8kosWHIkRJCjkaVUqOKtpHBDlHdhTXsITGZkVE0eTSE1ZfPdBG5fAX23J+KOxxbGE4E4xQU6n8EQRdvv1F3phJ8E= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=p3hnUmYa; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="p3hnUmYa" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 9DD0EC433C7; Sun, 24 Mar 2024 23:48:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324137; bh=EpkfoWx72jhMfIWXfpdojzGNUtDam6OnAiKzo5ntHS0=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=p3hnUmYaRFL/47h3I5oqmai53ncoSCd+H1XjsfhcCi8JLtqvTY4FhI2LK+WnP26rL XU2M/rsTdeAcmRCQw7pTPaQDiFroX8lY2CEnTnUr3sD25vODpOkbbkNHhQHUhtHPSM xALROK5dKf6P3lazmsaHXewZB74eT9FJBDTcG9UIcHSHiUBVLuWqyUVEC3ARhTQdAU SC7kNjTvuE7bZlK+Jsf2iXVuQu72C1CfM6GQnUX4E4CBrCoJzWvlmyCT02ztQNRnnZ 7kSwZF6Lve6k7vruNafag+TDYlFmKqffXB4VJCPW8ofoOWDxHuTOkVQQilKp9C4hBs Fwh0qOrbJAUVA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Arnd Bergmann , Justin Stitt , Hans Verkuil , Sasha Levin Subject: [PATCH 5.4 134/183] media: dvb-frontends: avoid stack overflow warnings with clang Date: Sun, 24 Mar 2024 19:45:47 -0400 Message-ID: <20240324234638.1355609-135-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Arnd Bergmann [ Upstream commit 7a4cf27d1f0538f779bf31b8c99eda394e277119 ] A previous patch worked around a KASAN issue in stv0367, now a similar problem showed up with clang: drivers/media/dvb-frontends/stv0367.c:1222:12: error: stack frame size (362= 4) exceeds limit (2048) in 'stv0367ter_set_frontend' [-Werror,-Wframe-large= r-than] 1214 | static int stv0367ter_set_frontend(struct dvb_frontend *fe) Rework the stv0367_writereg() function to be simpler and mark both register access functions as noinline_for_stack so the temporary i2c_msg structures do not get duplicated on the stack when KASAN_STACK is enabled. Fixes: 3cd890dbe2a4 ("media: dvb-frontends: fix i2c access helpers for KASA= N") Signed-off-by: Arnd Bergmann Reviewed-by: Justin Stitt Signed-off-by: Hans Verkuil Signed-off-by: Sasha Levin --- drivers/media/dvb-frontends/stv0367.c | 34 +++++++-------------------- 1 file changed, 8 insertions(+), 26 deletions(-) diff --git a/drivers/media/dvb-frontends/stv0367.c b/drivers/media/dvb-fron= tends/stv0367.c index 0bfca1174e9e7..8cbae8235b174 100644 --- a/drivers/media/dvb-frontends/stv0367.c +++ b/drivers/media/dvb-frontends/stv0367.c @@ -118,50 +118,32 @@ static const s32 stv0367cab_RF_LookUp2[RF_LOOKUP_TABL= E2_SIZE][RF_LOOKUP_TABLE2_S } }; =20 -static -int stv0367_writeregs(struct stv0367_state *state, u16 reg, u8 *data, int = len) +static noinline_for_stack +int stv0367_writereg(struct stv0367_state *state, u16 reg, u8 data) { - u8 buf[MAX_XFER_SIZE]; + u8 buf[3] =3D { MSB(reg), LSB(reg), data }; struct i2c_msg msg =3D { .addr =3D state->config->demod_address, .flags =3D 0, .buf =3D buf, - .len =3D len + 2 + .len =3D 3, }; int ret; =20 - if (2 + len > sizeof(buf)) { - printk(KERN_WARNING - "%s: i2c wr reg=3D%04x: len=3D%d is too big!\n", - KBUILD_MODNAME, reg, len); - return -EINVAL; - } - - - buf[0] =3D MSB(reg); - buf[1] =3D LSB(reg); - memcpy(buf + 2, data, len); - if (i2cdebug) printk(KERN_DEBUG "%s: [%02x] %02x: %02x\n", __func__, - state->config->demod_address, reg, buf[2]); + state->config->demod_address, reg, data); =20 ret =3D i2c_transfer(state->i2c, &msg, 1); if (ret !=3D 1) printk(KERN_ERR "%s: i2c write error! ([%02x] %02x: %02x)\n", - __func__, state->config->demod_address, reg, buf[2]); + __func__, state->config->demod_address, reg, data); =20 return (ret !=3D 1) ? -EREMOTEIO : 0; } =20 -static int stv0367_writereg(struct stv0367_state *state, u16 reg, u8 data) -{ - u8 tmp =3D data; /* see gcc.gnu.org/bugzilla/show_bug.cgi?id=3D81715 */ - - return stv0367_writeregs(state, reg, &tmp, 1); -} - -static u8 stv0367_readreg(struct stv0367_state *state, u16 reg) +static noinline_for_stack +u8 stv0367_readreg(struct stv0367_state *state, u16 reg) { u8 b0[] =3D { 0, 0 }; u8 b1[] =3D { 0 }; --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 5B0A345038; Sun, 24 Mar 2024 23:48:58 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324139; cv=none; b=eSDrR+OKO6oJAHis5qpKaXoNt1wMKGPzkgE4kRm9hZuXLCF60QNYKTvKHP0fYQkLzqpFMbHE6v0MZKo5ZLxTuZ2KL/x4Q4MPpdazohA8FevMPzYhToSBYiBMxU2xq0CpbJlR8ks7EFOlJsqizM52GWJCPF4hNBRZotvnQGyZdLk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324139; c=relaxed/simple; bh=jsmquPFMRbDY+YIiRzxqSApPUWnYvWRIhZBNozaJxdg=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=hZ5ExVJuBtkD7MdkD10ViDza4J8AUuCIdhAYr4l/CPZOs43RMNDEgDVnSVNuPfuf+laUhhylxXyeOPy/Wgdi7w2A6Fz3mVGtDJcDanH+A6iZZX0GEEOR8KQPvBeyWVo+LmZaOFajBFiFhqIfKAyEl7IhvAv/OGeC3tN92RvIa08= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=Y4pidBnE; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="Y4pidBnE" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 9BFA3C43394; Sun, 24 Mar 2024 23:48:57 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324138; bh=jsmquPFMRbDY+YIiRzxqSApPUWnYvWRIhZBNozaJxdg=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Y4pidBnEUkma08rSoMmieUz4ertTD43nwIXPQvCUdbT/Nal6Gqk4PUdoHbFs06Dz+ S/gKgY0dwPuVbkm21l1EaMRsJOYdyrXO5AuBcRuRfqmt00ixSxpWzPWczTZqqNwhfF 7BFGNt0B9FmyS731EWmvxg2hs4Hdyd93VtJaiYi4JUf91R8ffmpauVJ/HtrcWmQ/kb 5noBEJH5HVem0e1P1/HMX5w3suLH3gohAQLP+pwr14K+uil5083j37KkKeFEhGPuBm Fmqe6d+TTdh9pn+51y0OZGUaAZj3Fwk4FwTabQkCJeC2+LPCzs+MUqvlkXREYkG3xE Fku1PZqMhRtqQ== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Zhipeng Lu , Hans Verkuil , Sasha Levin Subject: [PATCH 5.4 135/183] media: go7007: fix a memleak in go7007_load_encoder Date: Sun, 24 Mar 2024 19:45:48 -0400 Message-ID: <20240324234638.1355609-136-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Zhipeng Lu [ Upstream commit b9b683844b01d171a72b9c0419a2d760d946ee12 ] In go7007_load_encoder, bounce(i.e. go->boot_fw), is allocated without a deallocation thereafter. After the following call chain: saa7134_go7007_init |-> go7007_boot_encoder |-> go7007_load_encoder |-> kfree(go) go is freed and thus bounce is leaked. Fixes: 95ef39403f89 ("[media] go7007: remember boot firmware") Signed-off-by: Zhipeng Lu Signed-off-by: Hans Verkuil Signed-off-by: Sasha Levin --- drivers/media/usb/go7007/go7007-driver.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/drivers/media/usb/go7007/go7007-driver.c b/drivers/media/usb/g= o7007/go7007-driver.c index b9302d77d6c83..8ee0d5ea84157 100644 --- a/drivers/media/usb/go7007/go7007-driver.c +++ b/drivers/media/usb/go7007/go7007-driver.c @@ -80,7 +80,7 @@ static int go7007_load_encoder(struct go7007 *go) const struct firmware *fw_entry; char fw_name[] =3D "go7007/go7007fw.bin"; void *bounce; - int fw_len, rv =3D 0; + int fw_len; u16 intr_val, intr_data; =20 if (go->boot_fw =3D=3D NULL) { @@ -109,9 +109,11 @@ static int go7007_load_encoder(struct go7007 *go) go7007_read_interrupt(go, &intr_val, &intr_data) < 0 || (intr_val & ~0x1) !=3D 0x5a5a) { v4l2_err(go, "error transferring firmware\n"); - rv =3D -1; + kfree(go->boot_fw); + go->boot_fw =3D NULL; + return -1; } - return rv; + return 0; } =20 MODULE_FIRMWARE("go7007/go7007fw.bin"); --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 5E8FC229C17; Sun, 24 Mar 2024 23:49:00 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324140; cv=none; b=qWwr/KdzprJ5WaU0NvGXnSzmxiGqub5ZqbotmEm98r0NGF6B8CJB3o+oW7T7/TeLas1Cuv2DNNtRa8tdP+muQqtZUYGfUmTJiHY0+LVv3sD7Z37JTa+LLz/a9/amewGJNN7vJwkOLCtslTMqL47fluiMgFbj5P3shIR274z4CcA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324140; c=relaxed/simple; bh=P2fm8Z2EQMNiv+Y/NQXqm4jPEzogggdVonsyMGAJLTc=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=hrkpZaTol5d9RDT/kVp7jf3Rnnn+FDaL1FsVvefMsW64OXzJFGbs0Vd+CgjwWehRx4RWmHu/qS7nOU082MEDEUXdCF4ta708YIkd0kKnulwsfIvoFaSHCfX+c8jqvgKitGKlM0XTmtF2oRspGbk71CdcGNja/CtQ6ADxmlMZIkI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=MBDHIhxH; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="MBDHIhxH" Received: by smtp.kernel.org (Postfix) with ESMTPSA id D8757C433C7; Sun, 24 Mar 2024 23:48:58 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324140; bh=P2fm8Z2EQMNiv+Y/NQXqm4jPEzogggdVonsyMGAJLTc=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=MBDHIhxHshcM8H/PcWaAagqGKw28WGKW/L7v6xfArotnQSdA5QGi1+RaMOHkNG4nK PE0WDuflP1hujkuYbHbGCN+okMF+nVQWyXCiqeXop51FB0IuIQ2R8VsR3Yf5vNfhxR yYEN9EdmKR3Jnk1zDIi5Ya6Ua67u1Dra5MVuRPyvO2Da5uV4pwC3J+JZkyrZa9X9IJ DBt48li2d3qtJZ7kWExuuIeWQlawEjiivwFYywmuRZ6+n0H3sALJSj2mrydKRBDF5K 4tgi2ZamD1bPtQFk1oa4wEVxQtSCVH/l6LS8yssUCFn3qEZ0ccXj/8ujJfaWIKcwoJ n+o/2ZvMw2kTQ== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Vandana BN , Hans Verkuil , Laurent Pinchart , Mauro Carvalho Chehab , Sasha Levin Subject: [PATCH 5.4 136/183] media: v4l2-core: correctly validate video and metadata ioctls Date: Sun, 24 Mar 2024 19:45:49 -0400 Message-ID: <20240324234638.1355609-137-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Vandana BN [ Upstream commit 96f49c1ac370c23ae55c63c67a0b40d83928bfbd ] If the type is VFL_TYPE_GRABBER, then also check device_caps to see if the video device supports video and/or metadata and disable unneeded ioctls. Without this change, format ioctls for both video and metadata devices could be called on both device nodes. This is true for other ioctls as well, even if the device supports only video or metadata. Metadata devices act similar to VBI devices w.r.t. which ioctls should be enabled. This makes sense since VBI *is* metadata. Signed-off-by: Vandana BN Co-developed-by: Hans Verkuil Signed-off-by: Hans Verkuil Acked-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab Stable-dep-of: d0b07f712bf6 ("media: ttpci: fix two memleaks in budget_av_a= ttach") Signed-off-by: Sasha Levin --- drivers/media/v4l2-core/v4l2-dev.c | 62 +++++++++++++++++----------- drivers/media/v4l2-core/v4l2-ioctl.c | 16 +++++-- 2 files changed, 52 insertions(+), 26 deletions(-) diff --git a/drivers/media/v4l2-core/v4l2-dev.c b/drivers/media/v4l2-core/v= 4l2-dev.c index 4037689a945a5..1bf543932e4f9 100644 --- a/drivers/media/v4l2-core/v4l2-dev.c +++ b/drivers/media/v4l2-core/v4l2-dev.c @@ -533,13 +533,23 @@ static int get_index(struct video_device *vdev) */ static void determine_valid_ioctls(struct video_device *vdev) { + const u32 vid_caps =3D V4L2_CAP_VIDEO_CAPTURE | + V4L2_CAP_VIDEO_CAPTURE_MPLANE | + V4L2_CAP_VIDEO_OUTPUT | + V4L2_CAP_VIDEO_OUTPUT_MPLANE | + V4L2_CAP_VIDEO_M2M | V4L2_CAP_VIDEO_M2M_MPLANE; + const u32 meta_caps =3D V4L2_CAP_META_CAPTURE | + V4L2_CAP_META_OUTPUT; DECLARE_BITMAP(valid_ioctls, BASE_VIDIOC_PRIVATE); const struct v4l2_ioctl_ops *ops =3D vdev->ioctl_ops; - bool is_vid =3D vdev->vfl_type =3D=3D VFL_TYPE_GRABBER; + bool is_vid =3D vdev->vfl_type =3D=3D VFL_TYPE_GRABBER && + (vdev->device_caps & vid_caps); bool is_vbi =3D vdev->vfl_type =3D=3D VFL_TYPE_VBI; bool is_radio =3D vdev->vfl_type =3D=3D VFL_TYPE_RADIO; bool is_sdr =3D vdev->vfl_type =3D=3D VFL_TYPE_SDR; bool is_tch =3D vdev->vfl_type =3D=3D VFL_TYPE_TOUCH; + bool is_meta =3D vdev->vfl_type =3D=3D VFL_TYPE_GRABBER && + (vdev->device_caps & meta_caps); bool is_rx =3D vdev->vfl_dir !=3D VFL_DIR_TX; bool is_tx =3D vdev->vfl_dir !=3D VFL_DIR_RX; =20 @@ -587,39 +597,31 @@ static void determine_valid_ioctls(struct video_devic= e *vdev) set_bit(_IOC_NR(VIDIOC_ENUM_FREQ_BANDS), valid_ioctls); =20 if (is_vid || is_tch) { - /* video and metadata specific ioctls */ + /* video and touch specific ioctls */ if ((is_rx && (ops->vidioc_enum_fmt_vid_cap || - ops->vidioc_enum_fmt_vid_overlay || - ops->vidioc_enum_fmt_meta_cap)) || - (is_tx && (ops->vidioc_enum_fmt_vid_out || - ops->vidioc_enum_fmt_meta_out))) + ops->vidioc_enum_fmt_vid_overlay)) || + (is_tx && ops->vidioc_enum_fmt_vid_out)) set_bit(_IOC_NR(VIDIOC_ENUM_FMT), valid_ioctls); if ((is_rx && (ops->vidioc_g_fmt_vid_cap || ops->vidioc_g_fmt_vid_cap_mplane || - ops->vidioc_g_fmt_vid_overlay || - ops->vidioc_g_fmt_meta_cap)) || + ops->vidioc_g_fmt_vid_overlay)) || (is_tx && (ops->vidioc_g_fmt_vid_out || ops->vidioc_g_fmt_vid_out_mplane || - ops->vidioc_g_fmt_vid_out_overlay || - ops->vidioc_g_fmt_meta_out))) + ops->vidioc_g_fmt_vid_out_overlay))) set_bit(_IOC_NR(VIDIOC_G_FMT), valid_ioctls); if ((is_rx && (ops->vidioc_s_fmt_vid_cap || ops->vidioc_s_fmt_vid_cap_mplane || - ops->vidioc_s_fmt_vid_overlay || - ops->vidioc_s_fmt_meta_cap)) || + ops->vidioc_s_fmt_vid_overlay)) || (is_tx && (ops->vidioc_s_fmt_vid_out || ops->vidioc_s_fmt_vid_out_mplane || - ops->vidioc_s_fmt_vid_out_overlay || - ops->vidioc_s_fmt_meta_out))) + ops->vidioc_s_fmt_vid_out_overlay))) set_bit(_IOC_NR(VIDIOC_S_FMT), valid_ioctls); if ((is_rx && (ops->vidioc_try_fmt_vid_cap || ops->vidioc_try_fmt_vid_cap_mplane || - ops->vidioc_try_fmt_vid_overlay || - ops->vidioc_try_fmt_meta_cap)) || + ops->vidioc_try_fmt_vid_overlay)) || (is_tx && (ops->vidioc_try_fmt_vid_out || ops->vidioc_try_fmt_vid_out_mplane || - ops->vidioc_try_fmt_vid_out_overlay || - ops->vidioc_try_fmt_meta_out))) + ops->vidioc_try_fmt_vid_out_overlay))) set_bit(_IOC_NR(VIDIOC_TRY_FMT), valid_ioctls); SET_VALID_IOCTL(ops, VIDIOC_OVERLAY, vidioc_overlay); SET_VALID_IOCTL(ops, VIDIOC_G_FBUF, vidioc_g_fbuf); @@ -641,7 +643,21 @@ static void determine_valid_ioctls(struct video_device= *vdev) set_bit(_IOC_NR(VIDIOC_S_CROP), valid_ioctls); SET_VALID_IOCTL(ops, VIDIOC_G_SELECTION, vidioc_g_selection); SET_VALID_IOCTL(ops, VIDIOC_S_SELECTION, vidioc_s_selection); - } else if (is_vbi) { + } + if (is_meta && is_rx) { + /* metadata capture specific ioctls */ + SET_VALID_IOCTL(ops, VIDIOC_ENUM_FMT, vidioc_enum_fmt_meta_cap); + SET_VALID_IOCTL(ops, VIDIOC_G_FMT, vidioc_g_fmt_meta_cap); + SET_VALID_IOCTL(ops, VIDIOC_S_FMT, vidioc_s_fmt_meta_cap); + SET_VALID_IOCTL(ops, VIDIOC_TRY_FMT, vidioc_try_fmt_meta_cap); + } else if (is_meta && is_tx) { + /* metadata output specific ioctls */ + SET_VALID_IOCTL(ops, VIDIOC_ENUM_FMT, vidioc_enum_fmt_meta_out); + SET_VALID_IOCTL(ops, VIDIOC_G_FMT, vidioc_g_fmt_meta_out); + SET_VALID_IOCTL(ops, VIDIOC_S_FMT, vidioc_s_fmt_meta_out); + SET_VALID_IOCTL(ops, VIDIOC_TRY_FMT, vidioc_try_fmt_meta_out); + } + if (is_vbi) { /* vbi specific ioctls */ if ((is_rx && (ops->vidioc_g_fmt_vbi_cap || ops->vidioc_g_fmt_sliced_vbi_cap)) || @@ -681,8 +697,8 @@ static void determine_valid_ioctls(struct video_device = *vdev) set_bit(_IOC_NR(VIDIOC_TRY_FMT), valid_ioctls); } =20 - if (is_vid || is_vbi || is_sdr || is_tch) { - /* ioctls valid for video, metadata, vbi or sdr */ + if (is_vid || is_vbi || is_sdr || is_tch || is_meta) { + /* ioctls valid for video, vbi, sdr, touch and metadata */ SET_VALID_IOCTL(ops, VIDIOC_REQBUFS, vidioc_reqbufs); SET_VALID_IOCTL(ops, VIDIOC_QUERYBUF, vidioc_querybuf); SET_VALID_IOCTL(ops, VIDIOC_QBUF, vidioc_qbuf); @@ -694,8 +710,8 @@ static void determine_valid_ioctls(struct video_device = *vdev) SET_VALID_IOCTL(ops, VIDIOC_STREAMOFF, vidioc_streamoff); } =20 - if (is_vid || is_vbi || is_tch) { - /* ioctls valid for video or vbi */ + if (is_vid || is_vbi || is_tch || is_meta) { + /* ioctls valid for video, vbi, touch and metadata */ if (ops->vidioc_s_std) set_bit(_IOC_NR(VIDIOC_ENUMSTD), valid_ioctls); SET_VALID_IOCTL(ops, VIDIOC_S_STD, vidioc_s_std); diff --git a/drivers/media/v4l2-core/v4l2-ioctl.c b/drivers/media/v4l2-core= /v4l2-ioctl.c index 3012e8ecffb94..b8edef9160864 100644 --- a/drivers/media/v4l2-core/v4l2-ioctl.c +++ b/drivers/media/v4l2-core/v4l2-ioctl.c @@ -950,12 +950,22 @@ static bool check_ext_ctrls(struct v4l2_ext_controls = *c, unsigned long ioctl) =20 static int check_fmt(struct file *file, enum v4l2_buf_type type) { + const u32 vid_caps =3D V4L2_CAP_VIDEO_CAPTURE | + V4L2_CAP_VIDEO_CAPTURE_MPLANE | + V4L2_CAP_VIDEO_OUTPUT | + V4L2_CAP_VIDEO_OUTPUT_MPLANE | + V4L2_CAP_VIDEO_M2M | V4L2_CAP_VIDEO_M2M_MPLANE; + const u32 meta_caps =3D V4L2_CAP_META_CAPTURE | + V4L2_CAP_META_OUTPUT; struct video_device *vfd =3D video_devdata(file); const struct v4l2_ioctl_ops *ops =3D vfd->ioctl_ops; - bool is_vid =3D vfd->vfl_type =3D=3D VFL_TYPE_GRABBER; + bool is_vid =3D vfd->vfl_type =3D=3D VFL_TYPE_GRABBER && + (vfd->device_caps & vid_caps); bool is_vbi =3D vfd->vfl_type =3D=3D VFL_TYPE_VBI; bool is_sdr =3D vfd->vfl_type =3D=3D VFL_TYPE_SDR; bool is_tch =3D vfd->vfl_type =3D=3D VFL_TYPE_TOUCH; + bool is_meta =3D vfd->vfl_type =3D=3D VFL_TYPE_GRABBER && + (vfd->device_caps & meta_caps); bool is_rx =3D vfd->vfl_dir !=3D VFL_DIR_TX; bool is_tx =3D vfd->vfl_dir !=3D VFL_DIR_RX; =20 @@ -1014,11 +1024,11 @@ static int check_fmt(struct file *file, enum v4l2_b= uf_type type) return 0; break; case V4L2_BUF_TYPE_META_CAPTURE: - if (is_vid && is_rx && ops->vidioc_g_fmt_meta_cap) + if (is_meta && is_rx && ops->vidioc_g_fmt_meta_cap) return 0; break; case V4L2_BUF_TYPE_META_OUTPUT: - if (is_vid && is_tx && ops->vidioc_g_fmt_meta_out) + if (is_meta && is_tx && ops->vidioc_g_fmt_meta_out) return 0; break; default: --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 8FD90181CFD; Sun, 24 Mar 2024 23:49:01 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324141; cv=none; b=UjFd7a3/lj0IIUwOqNgpapexYjclR+Sr1+DtnQa74ppsXTYTDIxZ7p/a+XKlL5hWQ62Vh++BNnrSDDXUT8a7hYeevN1uwo4Wr3YQdyrhhSYAcLeD1AhljmBnEKs9w08EhcvcrPTBkopnel1WoOEVhRF37JTOan4Prs0ijOrWPsg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324141; c=relaxed/simple; bh=oqK8V1hYn9cnmP/x01f7f4fW4CTXRYn8qwhuMOtNFZc=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=hK3ZUvendL2TPpVXreooUEzibEmcwycznANujFZe/SMy4oDwehL8AU8vGfz29wkBecAwNoZONwSti9iHXbV7mDfYvzRICtEBwJYpvj2JIW07haXvVxkGsJduqGW0cdCnh95f5M0+tAhhSdgcoaNYGV6nnz8Kufa/n6ZWPZzFyJw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=pbZSxk5M; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="pbZSxk5M" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 84F77C43394; Sun, 24 Mar 2024 23:49:00 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324141; bh=oqK8V1hYn9cnmP/x01f7f4fW4CTXRYn8qwhuMOtNFZc=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=pbZSxk5MwtzAJaijEj0aXxN7URsDOVER6I6KNEvCBM6d2lDuhzjkDph/u5lB0tMxO sa5hIcRlqnd3sGzYCzFKWGZNPxF8uzWPq6pkLknwllKQG+SKFFvs64vn+5mZcNCs6g 8Kmb//KlmGzLKcSsGM/2nsniePKXl2VsyleNjNM2QFv6V+5Uw0mG+VusAyZ+Kz8rbG AxT0XdikOEUE2vsD/HMX5TwA6czJh/uD53tidNmjxIJ3OaRbEzUTcBRMirm1T9CDub EQ7ZWt3IRscPoUwC6ZYAyCkhVQ4JnCuXpN9dn/u4s87HKkjc56x1UcImlHO/TZSX7v aTpAkfQRfLHHA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Hans Verkuil , Sakari Ailus , Laurent Pinchart , Mauro Carvalho Chehab , Sasha Levin Subject: [PATCH 5.4 137/183] media: rename VFL_TYPE_GRABBER to _VIDEO Date: Sun, 24 Mar 2024 19:45:50 -0400 Message-ID: <20240324234638.1355609-138-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable From: Hans Verkuil [ Upstream commit 238e4a5baa361256ae1641ad9455bb2bb359273f ] We currently have the following devnode types: enum vfl_devnode_type { VFL_TYPE_GRABBER =3D 0, VFL_TYPE_VBI, VFL_TYPE_RADIO, VFL_TYPE_SUBDEV, VFL_TYPE_SDR, VFL_TYPE_TOUCH, VFL_TYPE_MAX /* Shall be the last one */ }; They all make sense, except for the first: GRABBER really refers to /dev/vi= deoX devices, which can be capture, output or m2m, so 'grabber' doesn't even ref= er to their function anymore. Let's call a spade a spade and rename this to VFL_TYPE_VIDEO. Signed-off-by: Hans Verkuil Acked-by: Sakari Ailus Reviewed-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab Stable-dep-of: d0b07f712bf6 ("media: ttpci: fix two memleaks in budget_av_a= ttach") Signed-off-by: Sasha Levin --- Documentation/media/kapi/v4l2-dev.rst | 4 ++-- .../translations/zh_CN/video4linux/v4l2-framework.txt | 4 ++-- drivers/media/v4l2-core/v4l2-dev.c | 10 +++++----- drivers/media/v4l2-core/v4l2-ioctl.c | 4 ++-- include/media/v4l2-dev.h | 6 ++++-- samples/v4l/v4l2-pci-skeleton.c | 2 +- 6 files changed, 16 insertions(+), 14 deletions(-) diff --git a/Documentation/media/kapi/v4l2-dev.rst b/Documentation/media/ka= pi/v4l2-dev.rst index 4c5a15c53dbfb..63c064837c008 100644 --- a/Documentation/media/kapi/v4l2-dev.rst +++ b/Documentation/media/kapi/v4l2-dev.rst @@ -185,7 +185,7 @@ This will create the character device for you. =20 .. code-block:: c =20 - err =3D video_register_device(vdev, VFL_TYPE_GRABBER, -1); + err =3D video_register_device(vdev, VFL_TYPE_VIDEO, -1); if (err) { video_device_release(vdev); /* or kfree(my_vdev); */ return err; @@ -201,7 +201,7 @@ types exist: =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D =3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D :c:type:`vfl_devnode_type` Device name Usage =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D =3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D -``VFL_TYPE_GRABBER`` ``/dev/videoX`` for video input/output de= vices +``VFL_TYPE_VIDEO`` ``/dev/videoX`` for video input/output de= vices ``VFL_TYPE_VBI`` ``/dev/vbiX`` for vertical blank data (= i.e. closed captions, teletext) ``VFL_TYPE_RADIO`` ``/dev/radioX`` for radio tuners diff --git a/Documentation/translations/zh_CN/video4linux/v4l2-framework.tx= t b/Documentation/translations/zh_CN/video4linux/v4l2-framework.txt index 66c7c568bd866..9c39ee58ea507 100644 --- a/Documentation/translations/zh_CN/video4linux/v4l2-framework.txt +++ b/Documentation/translations/zh_CN/video4linux/v4l2-framework.txt @@ -649,7 +649,7 @@ video_device=E6=B3=A8=E5=86=8C =20 =E6=8E=A5=E4=B8=8B=E6=9D=A5=E4=BD=A0=E9=9C=80=E8=A6=81=E6=B3=A8=E5=86=8C= =E8=A7=86=E9=A2=91=E8=AE=BE=E5=A4=87=EF=BC=9A=E8=BF=99=E4=BC=9A=E4=B8=BA=E4= =BD=A0=E5=88=9B=E5=BB=BA=E4=B8=80=E4=B8=AA=E5=AD=97=E7=AC=A6=E8=AE=BE=E5=A4= =87=E3=80=82 =20 - err =3D video_register_device(vdev, VFL_TYPE_GRABBER, -1); + err =3D video_register_device(vdev, VFL_TYPE_VIDEO, -1); if (err) { video_device_release(vdev); /* or kfree(my_vdev); */ return err; @@ -660,7 +660,7 @@ video_device=E6=B3=A8=E5=86=8C =20 =E6=B3=A8=E5=86=8C=E5=93=AA=E7=A7=8D=E8=AE=BE=E5=A4=87=E6=98=AF=E6=A0=B9= =E6=8D=AE=E7=B1=BB=E5=9E=8B=EF=BC=88type=EF=BC=89=E5=8F=82=E6=95=B0=E3=80= =82=E5=AD=98=E5=9C=A8=E4=BB=A5=E4=B8=8B=E7=B1=BB=E5=9E=8B=EF=BC=9A =20 -VFL_TYPE_GRABBER: =E7=94=A8=E4=BA=8E=E8=A7=86=E9=A2=91=E8=BE=93=E5=85=A5/= =E8=BE=93=E5=87=BA=E8=AE=BE=E5=A4=87=E7=9A=84 videoX +VFL_TYPE_VIDEO: =E7=94=A8=E4=BA=8E=E8=A7=86=E9=A2=91=E8=BE=93=E5=85=A5/=E8= =BE=93=E5=87=BA=E8=AE=BE=E5=A4=87=E7=9A=84 videoX VFL_TYPE_VBI: =E7=94=A8=E4=BA=8E=E5=9E=82=E7=9B=B4=E6=B6=88=E9=9A=90=E6=95= =B0=E6=8D=AE=E7=9A=84 vbiX (=E4=BE=8B=E5=A6=82=EF=BC=8C=E9=9A=90=E8=97=8F= =E5=BC=8F=E5=AD=97=E5=B9=95=EF=BC=8C=E5=9B=BE=E6=96=87=E7=94=B5=E8=A7=86) VFL_TYPE_RADIO: =E7=94=A8=E4=BA=8E=E5=B9=BF=E6=92=AD=E8=B0=83=E8=B0=90=E5= =99=A8=E7=9A=84 radioX =20 diff --git a/drivers/media/v4l2-core/v4l2-dev.c b/drivers/media/v4l2-core/v= 4l2-dev.c index 1bf543932e4f9..ddc861868ce08 100644 --- a/drivers/media/v4l2-core/v4l2-dev.c +++ b/drivers/media/v4l2-core/v4l2-dev.c @@ -542,13 +542,13 @@ static void determine_valid_ioctls(struct video_devic= e *vdev) V4L2_CAP_META_OUTPUT; DECLARE_BITMAP(valid_ioctls, BASE_VIDIOC_PRIVATE); const struct v4l2_ioctl_ops *ops =3D vdev->ioctl_ops; - bool is_vid =3D vdev->vfl_type =3D=3D VFL_TYPE_GRABBER && + bool is_vid =3D vdev->vfl_type =3D=3D VFL_TYPE_VIDEO && (vdev->device_caps & vid_caps); bool is_vbi =3D vdev->vfl_type =3D=3D VFL_TYPE_VBI; bool is_radio =3D vdev->vfl_type =3D=3D VFL_TYPE_RADIO; bool is_sdr =3D vdev->vfl_type =3D=3D VFL_TYPE_SDR; bool is_tch =3D vdev->vfl_type =3D=3D VFL_TYPE_TOUCH; - bool is_meta =3D vdev->vfl_type =3D=3D VFL_TYPE_GRABBER && + bool is_meta =3D vdev->vfl_type =3D=3D VFL_TYPE_VIDEO && (vdev->device_caps & meta_caps); bool is_rx =3D vdev->vfl_dir !=3D VFL_DIR_TX; bool is_tx =3D vdev->vfl_dir !=3D VFL_DIR_RX; @@ -777,7 +777,7 @@ static int video_register_media_controller(struct video= _device *vdev) vdev->entity.function =3D MEDIA_ENT_F_UNKNOWN; =20 switch (vdev->vfl_type) { - case VFL_TYPE_GRABBER: + case VFL_TYPE_VIDEO: intf_type =3D MEDIA_INTF_T_V4L_VIDEO; vdev->entity.function =3D MEDIA_ENT_F_IO_V4L; break; @@ -885,7 +885,7 @@ int __video_register_device(struct video_device *vdev, =20 /* Part 1: check device type */ switch (type) { - case VFL_TYPE_GRABBER: + case VFL_TYPE_VIDEO: name_base =3D "video"; break; case VFL_TYPE_VBI: @@ -929,7 +929,7 @@ int __video_register_device(struct video_device *vdev, * of 128-191 and just pick the first free minor there * (new style). */ switch (type) { - case VFL_TYPE_GRABBER: + case VFL_TYPE_VIDEO: minor_offset =3D 0; minor_cnt =3D 64; break; diff --git a/drivers/media/v4l2-core/v4l2-ioctl.c b/drivers/media/v4l2-core= /v4l2-ioctl.c index b8edef9160864..682ba53b1a7a7 100644 --- a/drivers/media/v4l2-core/v4l2-ioctl.c +++ b/drivers/media/v4l2-core/v4l2-ioctl.c @@ -959,12 +959,12 @@ static int check_fmt(struct file *file, enum v4l2_buf= _type type) V4L2_CAP_META_OUTPUT; struct video_device *vfd =3D video_devdata(file); const struct v4l2_ioctl_ops *ops =3D vfd->ioctl_ops; - bool is_vid =3D vfd->vfl_type =3D=3D VFL_TYPE_GRABBER && + bool is_vid =3D vfd->vfl_type =3D=3D VFL_TYPE_VIDEO && (vfd->device_caps & vid_caps); bool is_vbi =3D vfd->vfl_type =3D=3D VFL_TYPE_VBI; bool is_sdr =3D vfd->vfl_type =3D=3D VFL_TYPE_SDR; bool is_tch =3D vfd->vfl_type =3D=3D VFL_TYPE_TOUCH; - bool is_meta =3D vfd->vfl_type =3D=3D VFL_TYPE_GRABBER && + bool is_meta =3D vfd->vfl_type =3D=3D VFL_TYPE_VIDEO && (vfd->device_caps & meta_caps); bool is_rx =3D vfd->vfl_dir !=3D VFL_DIR_TX; bool is_tx =3D vfd->vfl_dir !=3D VFL_DIR_RX; diff --git a/include/media/v4l2-dev.h b/include/media/v4l2-dev.h index 48531e57cc5a8..5e7c0f8acd054 100644 --- a/include/media/v4l2-dev.h +++ b/include/media/v4l2-dev.h @@ -24,7 +24,8 @@ /** * enum vfl_devnode_type - type of V4L2 device node * - * @VFL_TYPE_GRABBER: for video input/output devices + * @VFL_TYPE_VIDEO: for video input/output devices + * @VFL_TYPE_GRABBER: deprecated, same as VFL_TYPE_VIDEO * @VFL_TYPE_VBI: for vertical blank data (i.e. closed captions, teletext) * @VFL_TYPE_RADIO: for radio tuners * @VFL_TYPE_SUBDEV: for V4L2 subdevices @@ -33,7 +34,8 @@ * @VFL_TYPE_MAX: number of VFL types, must always be last in the enum */ enum vfl_devnode_type { - VFL_TYPE_GRABBER =3D 0, + VFL_TYPE_VIDEO, + VFL_TYPE_GRABBER =3D VFL_TYPE_VIDEO, VFL_TYPE_VBI, VFL_TYPE_RADIO, VFL_TYPE_SUBDEV, diff --git a/samples/v4l/v4l2-pci-skeleton.c b/samples/v4l/v4l2-pci-skeleto= n.c index f6a551bd57ef1..3fa6582b4a689 100644 --- a/samples/v4l/v4l2-pci-skeleton.c +++ b/samples/v4l/v4l2-pci-skeleton.c @@ -879,7 +879,7 @@ static int skeleton_probe(struct pci_dev *pdev, const s= truct pci_device_id *ent) vdev->tvnorms =3D SKEL_TVNORMS; video_set_drvdata(vdev, skel); =20 - ret =3D video_register_device(vdev, VFL_TYPE_GRABBER, -1); + ret =3D video_register_device(vdev, VFL_TYPE_VIDEO, -1); if (ret) goto free_hdl; =20 --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id BC795149DE7; Sun, 24 Mar 2024 23:49:02 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324142; cv=none; b=maOy6yWzcn5VaNdUKBGofugMNMQDChmv4D6G4u8rSofPM7XAfMjEu90DD/7hg3kSAB0aicozXJ8iOextH2nstRfpjn+RjfTK79QA0RPP3ar+AhZ2mYEY+KW56kwb1ZznyrfRznxTa+9RJZbjDEq6C0ZzTFWoY7c0bENX1Bus6Y4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324142; c=relaxed/simple; bh=4tULCppFs3vveufcOYGvqh7Mcyobk/ZQr/eLimMwwHA=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=GN2XKpkMoquVP4V8/6fUe+z0HytOxlA59oFpUF8jzVtlDfDG9IuGnlI8gxpNA9j2TQSLslReqeLDnzqGPiX86HO4BwfuNmV1zWD7AQwl0f03XSqGxtU6FXVW13dhJ/dZ13VWyeT/uX4N/HZRs5GkkFXOp7mSKAQqvxtV7stBCgI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=mzakJSxJ; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="mzakJSxJ" Received: by smtp.kernel.org (Postfix) with ESMTPSA id B6BD1C433F1; Sun, 24 Mar 2024 23:49:01 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324142; bh=4tULCppFs3vveufcOYGvqh7Mcyobk/ZQr/eLimMwwHA=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=mzakJSxJEIxfYIBVZEHIgo1EkWqv4f05IXVIaVwpuqSd9A2MKjj9t4d1iCyxPkEUx dXswF+Lt/Vjvxo54LIXqk5onuQnxzF3J5G5POX6fwWMTol1F9llXj5l7jNs8uXsDSb AQMr3GIAX/AplIjs5Hco8olIRQoQtffJTHoayoHZ4fi4CivUG6V89W5HQ5KmbrMlvJ JnJSic7Smmxe1MQRGmNFx38/4LMaYDZo876mEcWtgPbH9Ppv1DhXPChCY3rjlX6nj7 4Vlvwxt3r84s7DDWkLjjZS4zeBXBZGaaI81zgYy2d5ftjCd5IpJi08eVqbcTgyB8hh nvBHE+nEXsMtw== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Hans Verkuil , Mauro Carvalho Chehab , Sasha Levin Subject: [PATCH 5.4 138/183] media: media/pci: rename VFL_TYPE_GRABBER to _VIDEO Date: Sun, 24 Mar 2024 19:45:51 -0400 Message-ID: <20240324234638.1355609-139-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Hans Verkuil [ Upstream commit 3e30a927af3ca86f6556faf437da44ca8bcf54a4 ] 'GRABBER' is a weird name, all other types map to the /dev device names. Rename to 'VIDEO' to be consistent with the other types. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab Stable-dep-of: d0b07f712bf6 ("media: ttpci: fix two memleaks in budget_av_a= ttach") Signed-off-by: Sasha Levin --- drivers/media/pci/bt8xx/bttv-driver.c | 4 ++-- drivers/media/pci/cobalt/cobalt-v4l2.c | 2 +- drivers/media/pci/cx18/cx18-streams.c | 12 ++++++------ drivers/media/pci/cx23885/cx23885-417.c | 2 +- drivers/media/pci/cx23885/cx23885-video.c | 2 +- drivers/media/pci/cx25821/cx25821-video.c | 2 +- drivers/media/pci/cx88/cx88-blackbird.c | 2 +- drivers/media/pci/cx88/cx88-video.c | 2 +- drivers/media/pci/dt3155/dt3155.c | 2 +- drivers/media/pci/intel/ipu3/ipu3-cio2.c | 2 +- drivers/media/pci/ivtv/ivtv-streams.c | 12 ++++++------ drivers/media/pci/meye/meye.c | 2 +- drivers/media/pci/saa7134/saa7134-core.c | 2 +- drivers/media/pci/saa7134/saa7134-empress.c | 2 +- drivers/media/pci/saa7146/hexium_gemini.c | 2 +- drivers/media/pci/saa7146/hexium_orion.c | 2 +- drivers/media/pci/saa7146/mxb.c | 2 +- drivers/media/pci/saa7164/saa7164-encoder.c | 2 +- drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c | 2 +- drivers/media/pci/solo6x10/solo6x10-v4l2.c | 2 +- drivers/media/pci/sta2x11/sta2x11_vip.c | 2 +- drivers/media/pci/ttpci/av7110_v4l.c | 2 +- drivers/media/pci/ttpci/budget-av.c | 2 +- drivers/media/pci/tw5864/tw5864-video.c | 2 +- drivers/media/pci/tw68/tw68-video.c | 2 +- drivers/media/pci/tw686x/tw686x-video.c | 2 +- 26 files changed, 37 insertions(+), 37 deletions(-) diff --git a/drivers/media/pci/bt8xx/bttv-driver.c b/drivers/media/pci/bt8x= x/bttv-driver.c index a0be1ca89b29a..cdde56889fe2a 100644 --- a/drivers/media/pci/bt8xx/bttv-driver.c +++ b/drivers/media/pci/bt8xx/bttv-driver.c @@ -2964,7 +2964,7 @@ static int bttv_open(struct file *file) =20 dprintk("open dev=3D%s\n", video_device_node_name(vdev)); =20 - if (vdev->vfl_type =3D=3D VFL_TYPE_GRABBER) { + if (vdev->vfl_type =3D=3D VFL_TYPE_VIDEO) { type =3D V4L2_BUF_TYPE_VIDEO_CAPTURE; } else if (vdev->vfl_type =3D=3D VFL_TYPE_VBI) { type =3D V4L2_BUF_TYPE_VBI_CAPTURE; @@ -3905,7 +3905,7 @@ static int bttv_register_video(struct bttv *btv) if (no_overlay <=3D 0) btv->video_dev.device_caps |=3D V4L2_CAP_VIDEO_OVERLAY; =20 - if (video_register_device(&btv->video_dev, VFL_TYPE_GRABBER, + if (video_register_device(&btv->video_dev, VFL_TYPE_VIDEO, video_nr[btv->c.nr]) < 0) goto err; pr_info("%d: registered device %s\n", diff --git a/drivers/media/pci/cobalt/cobalt-v4l2.c b/drivers/media/pci/cob= alt/cobalt-v4l2.c index c5207501d5e03..0ff37496c9ab7 100644 --- a/drivers/media/pci/cobalt/cobalt-v4l2.c +++ b/drivers/media/pci/cobalt/cobalt-v4l2.c @@ -1272,7 +1272,7 @@ static int cobalt_node_register(struct cobalt *cobalt= , int node) video_set_drvdata(vdev, s); ret =3D vb2_queue_init(q); if (!s->is_audio && ret =3D=3D 0) - ret =3D video_register_device(vdev, VFL_TYPE_GRABBER, -1); + ret =3D video_register_device(vdev, VFL_TYPE_VIDEO, -1); else if (!s->is_dummy) ret =3D cobalt_alsa_init(s); =20 diff --git a/drivers/media/pci/cx18/cx18-streams.c b/drivers/media/pci/cx18= /cx18-streams.c index b79718519b9ba..3178df3c49224 100644 --- a/drivers/media/pci/cx18/cx18-streams.c +++ b/drivers/media/pci/cx18/cx18-streams.c @@ -48,19 +48,19 @@ static struct { } cx18_stream_info[] =3D { { /* CX18_ENC_STREAM_TYPE_MPG */ "encoder MPEG", - VFL_TYPE_GRABBER, 0, + VFL_TYPE_VIDEO, 0, PCI_DMA_FROMDEVICE, V4L2_CAP_VIDEO_CAPTURE | V4L2_CAP_READWRITE | V4L2_CAP_AUDIO | V4L2_CAP_TUNER }, { /* CX18_ENC_STREAM_TYPE_TS */ "TS", - VFL_TYPE_GRABBER, -1, + VFL_TYPE_VIDEO, -1, PCI_DMA_FROMDEVICE, }, { /* CX18_ENC_STREAM_TYPE_YUV */ "encoder YUV", - VFL_TYPE_GRABBER, CX18_V4L2_ENC_YUV_OFFSET, + VFL_TYPE_VIDEO, CX18_V4L2_ENC_YUV_OFFSET, PCI_DMA_FROMDEVICE, V4L2_CAP_VIDEO_CAPTURE | V4L2_CAP_READWRITE | V4L2_CAP_STREAMING | V4L2_CAP_AUDIO | V4L2_CAP_TUNER @@ -74,13 +74,13 @@ static struct { }, { /* CX18_ENC_STREAM_TYPE_PCM */ "encoder PCM audio", - VFL_TYPE_GRABBER, CX18_V4L2_ENC_PCM_OFFSET, + VFL_TYPE_VIDEO, CX18_V4L2_ENC_PCM_OFFSET, PCI_DMA_FROMDEVICE, V4L2_CAP_TUNER | V4L2_CAP_AUDIO | V4L2_CAP_READWRITE, }, { /* CX18_ENC_STREAM_TYPE_IDX */ "encoder IDX", - VFL_TYPE_GRABBER, -1, + VFL_TYPE_VIDEO, -1, PCI_DMA_FROMDEVICE, }, { /* CX18_ENC_STREAM_TYPE_RAD */ @@ -434,7 +434,7 @@ static int cx18_reg_dev(struct cx18 *cx, int type) name =3D video_device_node_name(&s->video_dev); =20 switch (vfl_type) { - case VFL_TYPE_GRABBER: + case VFL_TYPE_VIDEO: CX18_INFO("Registered device %s for %s (%d x %d.%02d kB)\n", name, s->name, cx->stream_buffers[type], cx->stream_buf_size[type] / 1024, diff --git a/drivers/media/pci/cx23885/cx23885-417.c b/drivers/media/pci/cx= 23885/cx23885-417.c index 2327fe6126102..434677bd4ad17 100644 --- a/drivers/media/pci/cx23885/cx23885-417.c +++ b/drivers/media/pci/cx23885/cx23885-417.c @@ -1545,7 +1545,7 @@ int cx23885_417_register(struct cx23885_dev *dev) if (dev->tuner_type !=3D TUNER_ABSENT) dev->v4l_device->device_caps |=3D V4L2_CAP_TUNER; err =3D video_register_device(dev->v4l_device, - VFL_TYPE_GRABBER, -1); + VFL_TYPE_VIDEO, -1); if (err < 0) { pr_info("%s: can't register mpeg device\n", dev->name); return err; diff --git a/drivers/media/pci/cx23885/cx23885-video.c b/drivers/media/pci/= cx23885/cx23885-video.c index f56b271db8bea..90224a9947022 100644 --- a/drivers/media/pci/cx23885/cx23885-video.c +++ b/drivers/media/pci/cx23885/cx23885-video.c @@ -1304,7 +1304,7 @@ int cx23885_video_register(struct cx23885_dev *dev) V4L2_CAP_AUDIO | V4L2_CAP_VIDEO_CAPTURE; if (dev->tuner_type !=3D TUNER_ABSENT) dev->video_dev->device_caps |=3D V4L2_CAP_TUNER; - err =3D video_register_device(dev->video_dev, VFL_TYPE_GRABBER, + err =3D video_register_device(dev->video_dev, VFL_TYPE_VIDEO, video_nr[dev->nr]); if (err < 0) { pr_info("%s: can't register video device\n", diff --git a/drivers/media/pci/cx25821/cx25821-video.c b/drivers/media/pci/= cx25821/cx25821-video.c index a10261da0db6e..1b80c990cb946 100644 --- a/drivers/media/pci/cx25821/cx25821-video.c +++ b/drivers/media/pci/cx25821/cx25821-video.c @@ -757,7 +757,7 @@ int cx25821_video_register(struct cx25821_dev *dev) snprintf(vdev->name, sizeof(vdev->name), "%s #%d", dev->name, i); video_set_drvdata(vdev, chan); =20 - err =3D video_register_device(vdev, VFL_TYPE_GRABBER, + err =3D video_register_device(vdev, VFL_TYPE_VIDEO, video_nr[dev->nr]); =20 if (err < 0) diff --git a/drivers/media/pci/cx88/cx88-blackbird.c b/drivers/media/pci/cx= 88/cx88-blackbird.c index d3da7f4297af8..fa4ca002ed191 100644 --- a/drivers/media/pci/cx88/cx88-blackbird.c +++ b/drivers/media/pci/cx88/cx88-blackbird.c @@ -1138,7 +1138,7 @@ static int blackbird_register_video(struct cx8802_dev= *dev) V4L2_CAP_VIDEO_CAPTURE; if (dev->core->board.tuner_type !=3D UNSET) dev->mpeg_dev.device_caps |=3D V4L2_CAP_TUNER; - err =3D video_register_device(&dev->mpeg_dev, VFL_TYPE_GRABBER, -1); + err =3D video_register_device(&dev->mpeg_dev, VFL_TYPE_VIDEO, -1); if (err < 0) { pr_info("can't register mpeg device\n"); return err; diff --git a/drivers/media/pci/cx88/cx88-video.c b/drivers/media/pci/cx88/c= x88-video.c index 547e18da1ad7d..151ffb5fd4042 100644 --- a/drivers/media/pci/cx88/cx88-video.c +++ b/drivers/media/pci/cx88/cx88-video.c @@ -1452,7 +1452,7 @@ static int cx8800_initdev(struct pci_dev *pci_dev, V4L2_CAP_VIDEO_CAPTURE; if (core->board.tuner_type !=3D UNSET) dev->video_dev.device_caps |=3D V4L2_CAP_TUNER; - err =3D video_register_device(&dev->video_dev, VFL_TYPE_GRABBER, + err =3D video_register_device(&dev->video_dev, VFL_TYPE_VIDEO, video_nr[core->nr]); if (err < 0) { pr_err("can't register video device\n"); diff --git a/drivers/media/pci/dt3155/dt3155.c b/drivers/media/pci/dt3155/d= t3155.c index 7480f0d3ad0fa..82581aa5a2a39 100644 --- a/drivers/media/pci/dt3155/dt3155.c +++ b/drivers/media/pci/dt3155/dt3155.c @@ -550,7 +550,7 @@ static int dt3155_probe(struct pci_dev *pdev, const str= uct pci_device_id *id) IRQF_SHARED, DT3155_NAME, pd); if (err) goto err_iounmap; - err =3D video_register_device(&pd->vdev, VFL_TYPE_GRABBER, -1); + err =3D video_register_device(&pd->vdev, VFL_TYPE_VIDEO, -1); if (err) goto err_free_irq; dev_info(&pdev->dev, "/dev/video%i is ready\n", pd->vdev.minor); diff --git a/drivers/media/pci/intel/ipu3/ipu3-cio2.c b/drivers/media/pci/i= ntel/ipu3/ipu3-cio2.c index 9c0d117e093b1..385b20b22ac35 100644 --- a/drivers/media/pci/intel/ipu3/ipu3-cio2.c +++ b/drivers/media/pci/intel/ipu3/ipu3-cio2.c @@ -1651,7 +1651,7 @@ static int cio2_queue_init(struct cio2_device *cio2, = struct cio2_queue *q) vdev->queue =3D &q->vbq; vdev->device_caps =3D V4L2_CAP_VIDEO_CAPTURE_MPLANE | V4L2_CAP_STREAMING; video_set_drvdata(vdev, cio2); - r =3D video_register_device(vdev, VFL_TYPE_GRABBER, -1); + r =3D video_register_device(vdev, VFL_TYPE_VIDEO, -1); if (r) { dev_err(&cio2->pci_dev->dev, "failed to register video device (%d)\n", r); diff --git a/drivers/media/pci/ivtv/ivtv-streams.c b/drivers/media/pci/ivtv= /ivtv-streams.c index 200d2100dbffd..f9de5d1605fe3 100644 --- a/drivers/media/pci/ivtv/ivtv-streams.c +++ b/drivers/media/pci/ivtv/ivtv-streams.c @@ -99,7 +99,7 @@ static struct { } ivtv_stream_info[] =3D { { /* IVTV_ENC_STREAM_TYPE_MPG */ "encoder MPG", - VFL_TYPE_GRABBER, 0, + VFL_TYPE_VIDEO, 0, PCI_DMA_FROMDEVICE, 0, V4L2_CAP_VIDEO_CAPTURE | V4L2_CAP_TUNER | V4L2_CAP_AUDIO | V4L2_CAP_READWRITE, @@ -107,7 +107,7 @@ static struct { }, { /* IVTV_ENC_STREAM_TYPE_YUV */ "encoder YUV", - VFL_TYPE_GRABBER, IVTV_V4L2_ENC_YUV_OFFSET, + VFL_TYPE_VIDEO, IVTV_V4L2_ENC_YUV_OFFSET, PCI_DMA_FROMDEVICE, 0, V4L2_CAP_VIDEO_CAPTURE | V4L2_CAP_TUNER | V4L2_CAP_AUDIO | V4L2_CAP_READWRITE, @@ -123,7 +123,7 @@ static struct { }, { /* IVTV_ENC_STREAM_TYPE_PCM */ "encoder PCM", - VFL_TYPE_GRABBER, IVTV_V4L2_ENC_PCM_OFFSET, + VFL_TYPE_VIDEO, IVTV_V4L2_ENC_PCM_OFFSET, PCI_DMA_FROMDEVICE, 0, V4L2_CAP_TUNER | V4L2_CAP_AUDIO | V4L2_CAP_READWRITE, &ivtv_v4l2_enc_fops @@ -137,7 +137,7 @@ static struct { }, { /* IVTV_DEC_STREAM_TYPE_MPG */ "decoder MPG", - VFL_TYPE_GRABBER, IVTV_V4L2_DEC_MPG_OFFSET, + VFL_TYPE_VIDEO, IVTV_V4L2_DEC_MPG_OFFSET, PCI_DMA_TODEVICE, 0, V4L2_CAP_VIDEO_OUTPUT | V4L2_CAP_AUDIO | V4L2_CAP_READWRITE, &ivtv_v4l2_dec_fops @@ -158,7 +158,7 @@ static struct { }, { /* IVTV_DEC_STREAM_TYPE_YUV */ "decoder YUV", - VFL_TYPE_GRABBER, IVTV_V4L2_DEC_YUV_OFFSET, + VFL_TYPE_VIDEO, IVTV_V4L2_DEC_YUV_OFFSET, PCI_DMA_TODEVICE, 0, V4L2_CAP_VIDEO_OUTPUT | V4L2_CAP_AUDIO | V4L2_CAP_READWRITE, &ivtv_v4l2_dec_fops @@ -315,7 +315,7 @@ static int ivtv_reg_dev(struct ivtv *itv, int type) name =3D video_device_node_name(&s->vdev); =20 switch (vfl_type) { - case VFL_TYPE_GRABBER: + case VFL_TYPE_VIDEO: IVTV_INFO("Registered device %s for %s (%d kB)\n", name, s->name, itv->options.kilobytes[type]); break; diff --git a/drivers/media/pci/meye/meye.c b/drivers/media/pci/meye/meye.c index 0e61c81356ef5..c42e48bc5c1cb 100644 --- a/drivers/media/pci/meye/meye.c +++ b/drivers/media/pci/meye/meye.c @@ -1711,7 +1711,7 @@ static int meye_probe(struct pci_dev *pcidev, const s= truct pci_device_id *ent) v4l2_ctrl_handler_setup(&meye.hdl); meye.vdev.ctrl_handler =3D &meye.hdl; =20 - if (video_register_device(&meye.vdev, VFL_TYPE_GRABBER, + if (video_register_device(&meye.vdev, VFL_TYPE_VIDEO, video_nr) < 0) { v4l2_err(v4l2_dev, "video_register_device failed\n"); goto outvideoreg; diff --git a/drivers/media/pci/saa7134/saa7134-core.c b/drivers/media/pci/s= aa7134/saa7134-core.c index 2d582c02adbf9..e4623ed2f8319 100644 --- a/drivers/media/pci/saa7134/saa7134-core.c +++ b/drivers/media/pci/saa7134/saa7134-core.c @@ -1214,7 +1214,7 @@ static int saa7134_initdev(struct pci_dev *pci_dev, if (saa7134_no_overlay <=3D 0) dev->video_dev->device_caps |=3D V4L2_CAP_VIDEO_OVERLAY; =20 - err =3D video_register_device(dev->video_dev,VFL_TYPE_GRABBER, + err =3D video_register_device(dev->video_dev,VFL_TYPE_VIDEO, video_nr[dev->nr]); if (err < 0) { pr_info("%s: can't register video device\n", diff --git a/drivers/media/pci/saa7134/saa7134-empress.c b/drivers/media/pc= i/saa7134/saa7134-empress.c index e2666d1c68964..141ee18ed827e 100644 --- a/drivers/media/pci/saa7134/saa7134-empress.c +++ b/drivers/media/pci/saa7134/saa7134-empress.c @@ -294,7 +294,7 @@ static int empress_init(struct saa7134_dev *dev) dev->empress_dev->device_caps |=3D V4L2_CAP_TUNER; =20 video_set_drvdata(dev->empress_dev, dev); - err =3D video_register_device(dev->empress_dev,VFL_TYPE_GRABBER, + err =3D video_register_device(dev->empress_dev,VFL_TYPE_VIDEO, empress_nr[dev->nr]); if (err < 0) { pr_info("%s: can't register video device\n", diff --git a/drivers/media/pci/saa7146/hexium_gemini.c b/drivers/media/pci/= saa7146/hexium_gemini.c index 86d4e2abed82a..3947701cd6c7e 100644 --- a/drivers/media/pci/saa7146/hexium_gemini.c +++ b/drivers/media/pci/saa7146/hexium_gemini.c @@ -294,7 +294,7 @@ static int hexium_attach(struct saa7146_dev *dev, struc= t saa7146_pci_extension_d vv_data.vid_ops.vidioc_enum_input =3D vidioc_enum_input; vv_data.vid_ops.vidioc_g_input =3D vidioc_g_input; vv_data.vid_ops.vidioc_s_input =3D vidioc_s_input; - ret =3D saa7146_register_device(&hexium->video_dev, dev, "hexium gemini",= VFL_TYPE_GRABBER); + ret =3D saa7146_register_device(&hexium->video_dev, dev, "hexium gemini",= VFL_TYPE_VIDEO); if (ret < 0) { pr_err("cannot register capture v4l2 device. skipping.\n"); saa7146_vv_release(dev); diff --git a/drivers/media/pci/saa7146/hexium_orion.c b/drivers/media/pci/s= aa7146/hexium_orion.c index 31388597386aa..2eb4bee16b71f 100644 --- a/drivers/media/pci/saa7146/hexium_orion.c +++ b/drivers/media/pci/saa7146/hexium_orion.c @@ -368,7 +368,7 @@ static int hexium_attach(struct saa7146_dev *dev, struc= t saa7146_pci_extension_d vv_data.vid_ops.vidioc_enum_input =3D vidioc_enum_input; vv_data.vid_ops.vidioc_g_input =3D vidioc_g_input; vv_data.vid_ops.vidioc_s_input =3D vidioc_s_input; - if (0 !=3D saa7146_register_device(&hexium->video_dev, dev, "hexium orion= ", VFL_TYPE_GRABBER)) { + if (0 !=3D saa7146_register_device(&hexium->video_dev, dev, "hexium orion= ", VFL_TYPE_VIDEO)) { pr_err("cannot register capture v4l2 device. skipping.\n"); return -1; } diff --git a/drivers/media/pci/saa7146/mxb.c b/drivers/media/pci/saa7146/mx= b.c index 58fe4c1619eeb..bf0b9b0914cd5 100644 --- a/drivers/media/pci/saa7146/mxb.c +++ b/drivers/media/pci/saa7146/mxb.c @@ -714,7 +714,7 @@ static int mxb_attach(struct saa7146_dev *dev, struct s= aa7146_pci_extension_data vv_data.vid_ops.vidioc_g_register =3D vidioc_g_register; vv_data.vid_ops.vidioc_s_register =3D vidioc_s_register; #endif - if (saa7146_register_device(&mxb->video_dev, dev, "mxb", VFL_TYPE_GRABBER= )) { + if (saa7146_register_device(&mxb->video_dev, dev, "mxb", VFL_TYPE_VIDEO))= { ERR("cannot register capture v4l2 device. skipping.\n"); saa7146_vv_release(dev); return -1; diff --git a/drivers/media/pci/saa7164/saa7164-encoder.c b/drivers/media/pc= i/saa7164/saa7164-encoder.c index df494644b5b64..1d1d32e043f16 100644 --- a/drivers/media/pci/saa7164/saa7164-encoder.c +++ b/drivers/media/pci/saa7164/saa7164-encoder.c @@ -1087,7 +1087,7 @@ int saa7164_encoder_register(struct saa7164_port *por= t) v4l2_ctrl_handler_setup(hdl); video_set_drvdata(port->v4l_device, port); result =3D video_register_device(port->v4l_device, - VFL_TYPE_GRABBER, -1); + VFL_TYPE_VIDEO, -1); if (result < 0) { printk(KERN_INFO "%s: can't register mpeg device\n", dev->name); diff --git a/drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c b/drivers/media= /pci/solo6x10/solo6x10-v4l2-enc.c index 476d7f3b32d63..cbf85231b708f 100644 --- a/drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c +++ b/drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c @@ -1304,7 +1304,7 @@ static struct solo_enc_dev *solo_enc_alloc(struct sol= o_dev *solo_dev, solo_enc->vfd->queue =3D &solo_enc->vidq; solo_enc->vfd->lock =3D &solo_enc->lock; video_set_drvdata(solo_enc->vfd, solo_enc); - ret =3D video_register_device(solo_enc->vfd, VFL_TYPE_GRABBER, nr); + ret =3D video_register_device(solo_enc->vfd, VFL_TYPE_VIDEO, nr); if (ret < 0) goto vdev_release; =20 diff --git a/drivers/media/pci/solo6x10/solo6x10-v4l2.c b/drivers/media/pci= /solo6x10/solo6x10-v4l2.c index 78792067e920f..54434f3c428d0 100644 --- a/drivers/media/pci/solo6x10/solo6x10-v4l2.c +++ b/drivers/media/pci/solo6x10/solo6x10-v4l2.c @@ -692,7 +692,7 @@ int solo_v4l2_init(struct solo_dev *solo_dev, unsigned = nr) while (erase_off(solo_dev)) /* Do nothing */; =20 - ret =3D video_register_device(solo_dev->vfd, VFL_TYPE_GRABBER, nr); + ret =3D video_register_device(solo_dev->vfd, VFL_TYPE_VIDEO, nr); if (ret < 0) goto fail; =20 diff --git a/drivers/media/pci/sta2x11/sta2x11_vip.c b/drivers/media/pci/st= a2x11/sta2x11_vip.c index fd3de3bb0c89b..798574cfad35e 100644 --- a/drivers/media/pci/sta2x11/sta2x11_vip.c +++ b/drivers/media/pci/sta2x11/sta2x11_vip.c @@ -1069,7 +1069,7 @@ static int sta2x11_vip_init_one(struct pci_dev *pdev, vip->video_dev.lock =3D &vip->v4l_lock; video_set_drvdata(&vip->video_dev, vip); =20 - ret =3D video_register_device(&vip->video_dev, VFL_TYPE_GRABBER, -1); + ret =3D video_register_device(&vip->video_dev, VFL_TYPE_VIDEO, -1); if (ret) goto vrelease; =20 diff --git a/drivers/media/pci/ttpci/av7110_v4l.c b/drivers/media/pci/ttpci= /av7110_v4l.c index f3d6c3cdb8721..cabe006658ddb 100644 --- a/drivers/media/pci/ttpci/av7110_v4l.c +++ b/drivers/media/pci/ttpci/av7110_v4l.c @@ -831,7 +831,7 @@ int av7110_init_v4l(struct av7110 *av7110) if (FW_VERSION(av7110->arm_app) < 0x2623) vv_data->capabilities &=3D ~V4L2_CAP_SLICED_VBI_OUTPUT; =20 - if (saa7146_register_device(&av7110->v4l_dev, dev, "av7110", VFL_TYPE_GRA= BBER)) { + if (saa7146_register_device(&av7110->v4l_dev, dev, "av7110", VFL_TYPE_VID= EO)) { ERR("cannot register capture device. skipping\n"); saa7146_vv_release(dev); return -ENODEV; diff --git a/drivers/media/pci/ttpci/budget-av.c b/drivers/media/pci/ttpci/= budget-av.c index e2d482af23677..38cac508bd728 100644 --- a/drivers/media/pci/ttpci/budget-av.c +++ b/drivers/media/pci/ttpci/budget-av.c @@ -1470,7 +1470,7 @@ static int budget_av_attach(struct saa7146_dev *dev, = struct saa7146_pci_extensio vv_data.vid_ops.vidioc_g_input =3D vidioc_g_input; vv_data.vid_ops.vidioc_s_input =3D vidioc_s_input; =20 - if ((err =3D saa7146_register_device(&budget_av->vd, dev, "knc1", VFL_TY= PE_GRABBER))) { + if ((err =3D saa7146_register_device(&budget_av->vd, dev, "knc1", VFL_TY= PE_VIDEO))) { /* fixme: proper cleanup here */ ERR("cannot register capture v4l2 device\n"); saa7146_vv_release(dev); diff --git a/drivers/media/pci/tw5864/tw5864-video.c b/drivers/media/pci/tw= 5864/tw5864-video.c index 656142c7a2cc7..a65114e7ca346 100644 --- a/drivers/media/pci/tw5864/tw5864-video.c +++ b/drivers/media/pci/tw5864/tw5864-video.c @@ -1162,7 +1162,7 @@ static int tw5864_video_input_init(struct tw5864_inpu= t *input, int video_nr) input->gop =3D GOP_SIZE; input->frame_interval =3D 1; =20 - ret =3D video_register_device(&input->vdev, VFL_TYPE_GRABBER, video_nr); + ret =3D video_register_device(&input->vdev, VFL_TYPE_VIDEO, video_nr); if (ret) goto free_v4l2_hdl; =20 diff --git a/drivers/media/pci/tw68/tw68-video.c b/drivers/media/pci/tw68/t= w68-video.c index 2fb82d50c53e5..10986fcd66a55 100644 --- a/drivers/media/pci/tw68/tw68-video.c +++ b/drivers/media/pci/tw68/tw68-video.c @@ -962,7 +962,7 @@ int tw68_video_init2(struct tw68_dev *dev, int video_nr) dev->vdev.lock =3D &dev->lock; dev->vdev.queue =3D &dev->vidq; video_set_drvdata(&dev->vdev, dev); - return video_register_device(&dev->vdev, VFL_TYPE_GRABBER, video_nr); + return video_register_device(&dev->vdev, VFL_TYPE_VIDEO, video_nr); } =20 /* diff --git a/drivers/media/pci/tw686x/tw686x-video.c b/drivers/media/pci/tw= 686x/tw686x-video.c index 9be8c6e4fb693..1ced2b0ddb241 100644 --- a/drivers/media/pci/tw686x/tw686x-video.c +++ b/drivers/media/pci/tw686x/tw686x-video.c @@ -1282,7 +1282,7 @@ int tw686x_video_init(struct tw686x_dev *dev) vc->device =3D vdev; video_set_drvdata(vdev, vc); =20 - err =3D video_register_device(vdev, VFL_TYPE_GRABBER, -1); + err =3D video_register_device(vdev, VFL_TYPE_VIDEO, -1); if (err < 0) goto error; vc->num =3D vdev->num; --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id AA64A181D0D; Sun, 24 Mar 2024 23:49:03 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324144; cv=none; b=o2CheFYH5kT9I/wVcohnu5pjvijsvL8IuBGwGHWIVZS7Jx+X+2k9Q0w0miUcqrocommNK7LASJKcBAjYVNDwLO6+mZl+wNv4DO9UDEQf4y4UIWhd1U5ye5t2yi2k/lDZz9kXFTaedYeMQ7CX4uSsxCtwI2eqexGU+GcKFkLIBlk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324144; c=relaxed/simple; bh=q0TseBmdD4j1bSZE8TyL8DKxdTzbsmqgxfwePlJzWqc=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=NkYT9AYDgmMZYZlHXXeplIIdErSdBZpO/+okis4Genn9XEK8T795HgVEFpDMan999ujAMH2CHSXxpJIC4gaSdc//QLOVbXqoMS3hho4jr99yi9H2lvjCCUiezK4ACpCn/hp6gcv/ertaK4aTOos/ziHG5ruX8HxpRd5n7ExZaNc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=fMHyuCE9; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="fMHyuCE9" Received: by smtp.kernel.org (Postfix) with ESMTPSA id E17DDC43390; Sun, 24 Mar 2024 23:49:02 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324143; bh=q0TseBmdD4j1bSZE8TyL8DKxdTzbsmqgxfwePlJzWqc=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=fMHyuCE9ummo6DMLnq4SyDP9f9jC0xQXiRBKsBQHxd/ZzYEWdsYMYroImMgRM4K+o zoFHY9CQ3LCtgC06OtlAlhm31oRbl02gAozgdZzBAOhuoeFQBKQB23T6r4Hi0oO7Ax DLk3Agz22uJm9J3LhMMYbCxLe8HGfRZHZxBWU6OFlewKtZuelHPqEo7By4vV9/d7qp yQ78vt7oMdCRQDQQYU5MWXi/X/aoy7eObQhHL8JtugpCAnpxjYq7DfWK/gu+6gUcv8 OImDQ4htBgD2Z7UWxFdF/e9BEuC/wJE/kvpHS6uecEQ47RjzZqadjJUNPV5gNFhdhv AoQHuvFbNG2Sg== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Zhipeng Lu , Hans Verkuil , Sasha Levin Subject: [PATCH 5.4 139/183] media: ttpci: fix two memleaks in budget_av_attach Date: Sun, 24 Mar 2024 19:45:52 -0400 Message-ID: <20240324234638.1355609-140-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Zhipeng Lu [ Upstream commit d0b07f712bf61e1a3cf23c87c663791c42e50837 ] When saa7146_register_device and saa7146_vv_init fails, budget_av_attach should free the resources it allocates, like the error-handling of ttpci_budget_init does. Besides, there are two fixme comment refers to such deallocations. Fixes: 1da177e4c3f4 ("Linux-2.6.12-rc2") Signed-off-by: Zhipeng Lu Signed-off-by: Hans Verkuil Signed-off-by: Sasha Levin --- drivers/media/pci/ttpci/budget-av.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/drivers/media/pci/ttpci/budget-av.c b/drivers/media/pci/ttpci/= budget-av.c index 38cac508bd728..3766c7aa96f44 100644 --- a/drivers/media/pci/ttpci/budget-av.c +++ b/drivers/media/pci/ttpci/budget-av.c @@ -1462,7 +1462,8 @@ static int budget_av_attach(struct saa7146_dev *dev, = struct saa7146_pci_extensio budget_av->has_saa7113 =3D 1; err =3D saa7146_vv_init(dev, &vv_data); if (err !=3D 0) { - /* fixme: proper cleanup here */ + ttpci_budget_deinit(&budget_av->budget); + kfree(budget_av); ERR("cannot init vv subsystem\n"); return err; } @@ -1471,9 +1472,10 @@ static int budget_av_attach(struct saa7146_dev *dev,= struct saa7146_pci_extensio vv_data.vid_ops.vidioc_s_input =3D vidioc_s_input; =20 if ((err =3D saa7146_register_device(&budget_av->vd, dev, "knc1", VFL_TY= PE_VIDEO))) { - /* fixme: proper cleanup here */ - ERR("cannot register capture v4l2 device\n"); saa7146_vv_release(dev); + ttpci_budget_deinit(&budget_av->budget); + kfree(budget_av); + ERR("cannot register capture v4l2 device\n"); return err; } =20 --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9EABF181D14; Sun, 24 Mar 2024 23:49:04 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324145; cv=none; b=R5HCWSa59aj8M0QWoXFt+FlrDSZKFezJGGtB3hwyGMjlQFh+s2PoYn06ZNUO4mGYTvuCGupGIhiAaEmQvVU1ANWYDYgy1gh3f/TRvJxUHaKrDDhFxcpQ4C3YhAkJZj+jbydYK7h16YbWIMst5fTMLMNInvIravG+jrvF+iyhuak= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324145; c=relaxed/simple; bh=+gT7l8HpU8Uq4f+qx3MRIipMm61GVqvFsyy4BLwDIJA=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=TO0vxL4bi0zwBuFn/qsOVXRq1nsCG3Ri4ebA9Lx/Nw5Xv5M/KEa788C+Kn95njCcateGqlsZsizoU6elVZYfUb/hoLfwM5oIBy1yz/kGONPszhiC6i9fB+xdNdtXk+UIug21vDc2fyigbSv0z0E/Naz7QtBE/nF4m/sBarzk17k= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=XFkW1kTR; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="XFkW1kTR" Received: by smtp.kernel.org (Postfix) with ESMTPSA id C748AC433B1; Sun, 24 Mar 2024 23:49:03 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324144; bh=+gT7l8HpU8Uq4f+qx3MRIipMm61GVqvFsyy4BLwDIJA=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=XFkW1kTRMx39KV4xsIkvYY6qxXfszWU7qUb1rSrgNhpYmalt+7vF/yZ4gh/KtPVVj 5+jtRUE2p3Yb9Lspzf0Wn/mTpA97Bz4/Cfu9R/uZm+LqrVfRYRWW5Z4uIqfdGq6JWe qJf1mTgDgBnPqrVtwzCzhjn0uJH0Rrv2zXtssKA9eoS9ZNyf/LG320tnDkJUNYR9DF iBKNQ4GViI6sVmFOZ+mU5M4zp0n1nOnNRGoqIX29NhmgeWk4xCqpGiCjRI5EOnNv8p elccfgMH5Qt50qssduXEFuL9sRDNoqtEcqAWTa6Roax1GiKsM8Kv70qu49MwL4q7Tf PfDkM2XbzynfA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Hsin-Yi Wang , CK Hu , Chun-Kuang Hu , Sasha Levin Subject: [PATCH 5.4 140/183] drm/mediatek: Fix a null pointer crash in mtk_drm_crtc_finish_page_flip Date: Sun, 24 Mar 2024 19:45:53 -0400 Message-ID: <20240324234638.1355609-141-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Hsin-Yi Wang [ Upstream commit c958e86e9cc1b48cac004a6e245154dfba8e163b ] It's possible that mtk_crtc->event is NULL in mtk_drm_crtc_finish_page_flip(). pending_needs_vblank value is set by mtk_crtc->event, but in mtk_drm_crtc_atomic_flush(), it's is not guarded by the same lock in mtk_drm_finish_page_flip(), thus a race condition happens. Consider the following case: CPU1 CPU2 step 1: mtk_drm_crtc_atomic_begin() mtk_crtc->event is not null, step 1: mtk_drm_crtc_atomic_flush: mtk_drm_crtc_update_config( !!mtk_crtc->event) step 2: mtk_crtc_ddp_irq -> mtk_drm_finish_page_flip: lock mtk_crtc->event set to null, pending_needs_vblank set to false unlock pending_needs_vblank set to true, step 2: mtk_crtc_ddp_irq -> mtk_drm_finish_page_flip called again, pending_needs_vblank is still true //null pointer Instead of guarding the entire mtk_drm_crtc_atomic_flush(), it's more efficient to just check if mtk_crtc->event is null before use. Fixes: 119f5173628a ("drm/mediatek: Add DRM Driver for Mediatek SoC MT8173.= ") Signed-off-by: Hsin-Yi Wang Reviewed-by: CK Hu Link: https://patchwork.kernel.org/project/dri-devel/patch/20240223212404.3= 709690-1-hsinyi@chromium.org/ Signed-off-by: Chun-Kuang Hu Signed-off-by: Sasha Levin --- drivers/gpu/drm/mediatek/mtk_drm_crtc.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/drivers/gpu/drm/mediatek/mtk_drm_crtc.c b/drivers/gpu/drm/medi= atek/mtk_drm_crtc.c index f370d41b3d041..9bbad33500691 100644 --- a/drivers/gpu/drm/mediatek/mtk_drm_crtc.c +++ b/drivers/gpu/drm/mediatek/mtk_drm_crtc.c @@ -73,11 +73,13 @@ static void mtk_drm_crtc_finish_page_flip(struct mtk_dr= m_crtc *mtk_crtc) struct drm_crtc *crtc =3D &mtk_crtc->base; unsigned long flags; =20 - spin_lock_irqsave(&crtc->dev->event_lock, flags); - drm_crtc_send_vblank_event(crtc, mtk_crtc->event); - drm_crtc_vblank_put(crtc); - mtk_crtc->event =3D NULL; - spin_unlock_irqrestore(&crtc->dev->event_lock, flags); + if (mtk_crtc->event) { + spin_lock_irqsave(&crtc->dev->event_lock, flags); + drm_crtc_send_vblank_event(crtc, mtk_crtc->event); + drm_crtc_vblank_put(crtc); + mtk_crtc->event =3D NULL; + spin_unlock_irqrestore(&crtc->dev->event_lock, flags); + } } =20 static void mtk_drm_finish_page_flip(struct mtk_drm_crtc *mtk_crtc) --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9E2DD181D1B; Sun, 24 Mar 2024 23:49:05 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324146; cv=none; b=MugmyCOfKMNNhTT8jFKRy2FcpS6wP7rlrOwaWNy/zCTaffGpfIsuGqkOqGrA7jlmTMIbcg20hx+1gPl0U88DgVSHmAjt0Qdp6G7OZDrFypq77UTEp63yYZqEU2spm/rtM/76I4XVhD2wGlV5csI9IEhsBytPj6KffjTlPB26aPM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324146; c=relaxed/simple; bh=sfMrj3Mg4m9kWqQzTKckqZJ+fi2e9T09d6zG/hjs4QM=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=AWISlHHb9F+dkDR8a03dA7v6cIxgab9Z0y+TaHCTQLiGSowe7CpYOkdtf4HJOW6bbtgFOShiYsBdUefRv0J1vQAyCi9+x1uCbMmEhrjfqIFU+D46Ca++uD3BCFjmPlJkzqmoMI/H96dWwOir1AANLLinANZNocfRN1gCJ+oYwL8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=b0oNzIzx; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="b0oNzIzx" Received: by smtp.kernel.org (Postfix) with ESMTPSA id C4321C433F1; Sun, 24 Mar 2024 23:49:04 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324145; bh=sfMrj3Mg4m9kWqQzTKckqZJ+fi2e9T09d6zG/hjs4QM=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=b0oNzIzxoCjW4cYgcU4+h5jr4ilgZlcFzh8jAUEJNdeAC4rhlzAbphoKpdLejmz71 aAy7iEhZDK/XxUN9JrlRz0q0xx8ppgiiUhGITYSOTbOHL/xzO4fhyp3tOP074u3X7o yftDo+3GAOH2+Yj9+smrTzEP12DlgzTIaQh7cJf4VhcwHoqwiLM1IMKnPnGHdVgSZh ag0zlyNjpZS9UZuUEPl2zwTj6IRR1iPsv5ywrKisda7v4cMdu9YDLoXctiszy7EGaK 0/mXomy92718JpH62iiozBKSjhGPJkEI6gwaPqymKDx41S2tlxUWbqgrwYIG51g9S9 U0l3XYJcQ8YAw== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Kajol Jain , Akanksha J N , Michael Ellerman , Sasha Levin Subject: [PATCH 5.4 141/183] powerpc/hv-gpci: Fix the H_GET_PERF_COUNTER_INFO hcall return value checks Date: Sun, 24 Mar 2024 19:45:54 -0400 Message-ID: <20240324234638.1355609-142-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Kajol Jain [ Upstream commit ad86d7ee43b22aa2ed60fb982ae94b285c1be671 ] Running event hv_gpci/dispatch_timebase_by_processor_processor_time_in_time= base_cycles,phys_processor_idx=3D0/ in one of the system throws below error: ---Logs--- # perf list | grep hv_gpci/dispatch_timebase_by_processor_processor_time_i= n_timebase_cycles hv_gpci/dispatch_timebase_by_processor_processor_time_in_timebase_cycles,= phys_processor_idx=3D?/[Kernel PMU event] # perf stat -v -e hv_gpci/dispatch_timebase_by_processor_processor_time_in= _timebase_cycles,phys_processor_idx=3D0/ sleep 2 Using CPUID 00800200 Control descriptor is not initialized Warning: hv_gpci/dispatch_timebase_by_processor_processor_time_in_timebase_cycles,ph= ys_processor_idx=3D0/ event is not supported by the kernel. failed to read counter hv_gpci/dispatch_timebase_by_processor_processor_tim= e_in_timebase_cycles,phys_processor_idx=3D0/ Performance counter stats for 'system wide': hv_gpci/dispatch_timebase_by_processor_processor_ti= me_in_timebase_cycles,phys_processor_idx=3D0/ 2.000700771 seconds time elapsed The above error is because of the hcall failure as required permission "Enable Performance Information Collection" is not set. Based on current code, single_gpci_request function did not check the error type incase hcall fails and by default returns EINVAL. But we can have other reasons for hcall failures like H_AUTHORITY/H_PARAMETER with detail_rc as GEN_BUF_TOO_SMALL, for which we need to act accordingly. Fix this issue by adding new checks in the single_gpci_request and h_gpci_event_init functions. Result after fix patch changes: # perf stat -e hv_gpci/dispatch_timebase_by_processor_processor_time_in_ti= mebase_cycles,phys_processor_idx=3D0/ sleep 2 Error: No permission to enable hv_gpci/dispatch_timebase_by_processor_processor_ti= me_in_timebase_cycles,phys_processor_idx=3D0/ event. Fixes: 220a0c609ad1 ("powerpc/perf: Add support for the hv gpci (get perfor= mance counter info) interface") Reported-by: Akanksha J N Signed-off-by: Kajol Jain Signed-off-by: Michael Ellerman Link: https://msgid.link/20240229122847.101162-1-kjain@linux.ibm.com Signed-off-by: Sasha Levin --- arch/powerpc/perf/hv-gpci.c | 29 +++++++++++++++++++++++++++-- 1 file changed, 27 insertions(+), 2 deletions(-) diff --git a/arch/powerpc/perf/hv-gpci.c b/arch/powerpc/perf/hv-gpci.c index ac3f3df57fe39..e85f1962be024 100644 --- a/arch/powerpc/perf/hv-gpci.c +++ b/arch/powerpc/perf/hv-gpci.c @@ -153,6 +153,20 @@ static unsigned long single_gpci_request(u32 req, u32 = starting_index, =20 ret =3D plpar_hcall_norets(H_GET_PERF_COUNTER_INFO, virt_to_phys(arg), HGPCI_REQ_BUFFER_SIZE); + + /* + * ret value as 'H_PARAMETER' with detail_rc as 'GEN_BUF_TOO_SMALL', + * specifies that the current buffer size cannot accommodate + * all the information and a partial buffer returned. + * Since in this function we are only accessing data for a given starting= index, + * we don't need to accommodate whole data and can get required count by + * accessing first entry data. + * Hence hcall fails only incase the ret value is other than H_SUCCESS or + * H_PARAMETER with detail_rc value as GEN_BUF_TOO_SMALL(0x1B). + */ + if (ret =3D=3D H_PARAMETER && be32_to_cpu(arg->params.detail_rc) =3D=3D 0= x1B) + ret =3D 0; + if (ret) { pr_devel("hcall failed: 0x%lx\n", ret); goto out; @@ -217,6 +231,7 @@ static int h_gpci_event_init(struct perf_event *event) { u64 count; u8 length; + unsigned long ret; =20 /* Not our event */ if (event->attr.type !=3D event->pmu->type) @@ -247,13 +262,23 @@ static int h_gpci_event_init(struct perf_event *event) } =20 /* check if the request works... */ - if (single_gpci_request(event_get_request(event), + ret =3D single_gpci_request(event_get_request(event), event_get_starting_index(event), event_get_secondary_index(event), event_get_counter_info_version(event), event_get_offset(event), length, - &count)) { + &count); + + /* + * ret value as H_AUTHORITY implies that partition is not permitted to re= trieve + * performance information, and required to set + * "Enable Performance Information Collection" option. + */ + if (ret =3D=3D H_AUTHORITY) + return -EPERM; + + if (ret) { pr_devel("gpci hcall failed\n"); return -EINVAL; } --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9D9FF181D16; Sun, 24 Mar 2024 23:49:06 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324147; cv=none; b=dnO5MdBGYlJ06MqvEg5n1ADYWGFAsUg4CRjm4fSd7kFlTYI4QXtgiLN9YkJ5PdA0FTAnUjvbFb2d0kj8FQim7slAZpTp6f8vXnGadQJdgAslm3De7fweKk06PTY4FfF6TMx14+jOt1mPQ5A8Se5PH08CEiMFx0FOgMGViW/xTJU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324147; c=relaxed/simple; bh=GasxbuW90lsjKa6WhOQETR31tGoaeHe/4jBfXK0euBo=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=Al3GCg4/4Y7rFXZdTlp2yiL9V5QlZHiitjU30x87LIH/wMFaV3IqHjlbL4gWamQtSU+yO3G3d2r+3gRteJKTkX+un7SJcvKYprZjciRfmIOPgUEeX6pTHix4NLk9x2kvMvppjPYJVrHgADCgnT7cZZ2y7y7SHJ3W+JK3HqNjaqo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=iP6AXD2r; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="iP6AXD2r" Received: by smtp.kernel.org (Postfix) with ESMTPSA id C25E0C433B1; Sun, 24 Mar 2024 23:49:05 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324146; bh=GasxbuW90lsjKa6WhOQETR31tGoaeHe/4jBfXK0euBo=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=iP6AXD2rsttIVqdE/5Qq4NuGdb3Id++3eK9ob+JZGX9Ynd5rZYuM9/uJUVHlDYVkl 3mIdxHjN5l60XL6rTwoKCphKUnSrh5FFXijukLRt1OOBifiA99YRiH0FiERkjY8q99 RD9QQhYsZDePNqn7CF28sEst2cAr5nLRD6bFsANWiIaGNU1czCCtQ3K8aL2ZbrRo6J OQ+h0vJMADaJpiKW+Qo+C7VtJVaPWJvSXnSOHkYfDoZvRe6XbSNrXGkBqnXZBwao1B 3MDDV6vanxGpU/9ayccH17wrOF4uC95Q9lyX5slN6BTnF5F65l8O7vgKCwnGA3j3uu RLE1dxj8lDslg== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Paloma Arellano , Dmitry Baryshkov , Sasha Levin Subject: [PATCH 5.4 142/183] drm/msm/dpu: add division of drm_display_mode's hskew parameter Date: Sun, 24 Mar 2024 19:45:55 -0400 Message-ID: <20240324234638.1355609-143-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Paloma Arellano [ Upstream commit 551ee0f210991d25f336bc27262353bfe99d3eed ] Setting up the timing engine when the physical encoder has a split role neglects dividing the drm_display_mode's hskew parameter. Let's fix this since this must also be done in preparation for implementing YUV420 over DP. Fixes: 25fdd5933e4c ("drm/msm: Add SDM845 DPU support") Signed-off-by: Paloma Arellano Reviewed-by: Dmitry Baryshkov Patchwork: https://patchwork.freedesktop.org/patch/579605/ Link: https://lore.kernel.org/r/20240222194025.25329-3-quic_parellan@quicin= c.com Signed-off-by: Dmitry Baryshkov Signed-off-by: Sasha Levin --- drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c b/drivers= /gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c index b9c84fb4d4a1f..311863a05a6fa 100644 --- a/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c +++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c @@ -258,12 +258,14 @@ static void dpu_encoder_phys_vid_setup_timing_engine( mode.htotal >>=3D 1; mode.hsync_start >>=3D 1; mode.hsync_end >>=3D 1; + mode.hskew >>=3D 1; =20 DPU_DEBUG_VIDENC(phys_enc, - "split_role %d, halve horizontal %d %d %d %d\n", + "split_role %d, halve horizontal %d %d %d %d %d\n", phys_enc->split_role, mode.hdisplay, mode.htotal, - mode.hsync_start, mode.hsync_end); + mode.hsync_start, mode.hsync_end, + mode.hskew); } =20 drm_mode_to_intf_timing_params(phys_enc, &mode, &timing_params); --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 63FBB5D478; Sun, 24 Mar 2024 23:49:07 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324147; cv=none; b=uHDBOoCl9RXw0qrIht9DQOc4OUnmKMPbQ4404TfWMcOaJLR3GhauCMugoOxF5h2ERb+IOmFC74Zc6YqA4J/JDLBZK8gHnbLBbuG8FhGEacxWH/I910tuJXilW4kNdhRWRYdN7Sh25FvmD4c+ZKhIkyomP4zMIYSqPv+OkoCdIUY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324147; c=relaxed/simple; bh=IgTe3n66YGsLtCAM6MmQvEeSa0QRWAfowfES3Es53+M=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=GXM2jXmV81yEoJWAvkni+w72AYzaMA3B2GlJ5FqWqlnhl1JtQtLp7fuDzHxmJKbt87dPfzsu2FrK9YSf+WvLjQsY6wJbfc0zSWak9c3tI+AoTqCzDYQDXGCNdR51AkV6WIDt6k/5U2GKZxh/Hd+XNrhqKoAleZlrlKu8ywK0c/k= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=r6t/Vo+w; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="r6t/Vo+w" Received: by smtp.kernel.org (Postfix) with ESMTPSA id B858EC43390; Sun, 24 Mar 2024 23:49:06 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324147; bh=IgTe3n66YGsLtCAM6MmQvEeSa0QRWAfowfES3Es53+M=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=r6t/Vo+wmcpRO6jJ1yvQl0Ynb1YjzM4w7TybMR5SdyBkGB2KBWFjzXfrNedVmqyu2 76a77XVPi4OOpUdgM90piOO6XgZtvBj3KF3Ub4gs551RdDWS8gntSvm6ZcbQybYMt9 57WDvateeoxoQuedByB1GKffTdyc1Opt/T3c7ovfUijUrAwCUlGmfHKJMkzqc6X9Xa rLiZUXwI9KZZqY+fwMfsCXycDyaBzvLXwXHgiPoH1GIl3NVL0QM7MDY2Im9P49Rgg+ Ngy61ivQBB85xOhVyZc96JQGcgZyR8q+Ug2MumVDHYCqrlXus/QKzdw7Tq5VTRb6zv Nk4tKmL+E4UVQ== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Michael Ellerman , Sasha Levin Subject: [PATCH 5.4 143/183] powerpc/embedded6xx: Fix no previous prototype for avr_uart_send() etc. Date: Sun, 24 Mar 2024 19:45:56 -0400 Message-ID: <20240324234638.1355609-144-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Michael Ellerman [ Upstream commit 20933531be0577cdd782216858c26150dbc7936f ] Move the prototypes into mpc10x.h which is included by all the relevant C files, fixes: arch/powerpc/platforms/embedded6xx/ls_uart.c:59:6: error: no previous pro= totype for 'avr_uart_configure' arch/powerpc/platforms/embedded6xx/ls_uart.c:82:6: error: no previous pro= totype for 'avr_uart_send' Signed-off-by: Michael Ellerman Link: https://msgid.link/20240305123410.3306253-1-mpe@ellerman.id.au Signed-off-by: Sasha Levin --- arch/powerpc/platforms/embedded6xx/linkstation.c | 3 --- arch/powerpc/platforms/embedded6xx/mpc10x.h | 3 +++ 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/arch/powerpc/platforms/embedded6xx/linkstation.c b/arch/powerp= c/platforms/embedded6xx/linkstation.c index f514d5d28cd4f..3f3821eb4c36b 100644 --- a/arch/powerpc/platforms/embedded6xx/linkstation.c +++ b/arch/powerpc/platforms/embedded6xx/linkstation.c @@ -97,9 +97,6 @@ static void __init linkstation_init_IRQ(void) mpic_init(mpic); } =20 -extern void avr_uart_configure(void); -extern void avr_uart_send(const char); - static void __noreturn linkstation_restart(char *cmd) { local_irq_disable(); diff --git a/arch/powerpc/platforms/embedded6xx/mpc10x.h b/arch/powerpc/pla= tforms/embedded6xx/mpc10x.h index 5ad12023e5628..ebc258fa4858d 100644 --- a/arch/powerpc/platforms/embedded6xx/mpc10x.h +++ b/arch/powerpc/platforms/embedded6xx/mpc10x.h @@ -156,4 +156,7 @@ int mpc10x_disable_store_gathering(struct pci_controlle= r *hose); /* For MPC107 boards that use the built-in openpic */ void mpc10x_set_openpic(void); =20 +void avr_uart_configure(void); +void avr_uart_send(const char c); + #endif /* __PPC_KERNEL_MPC10X_H */ --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 66093180B7C; Sun, 24 Mar 2024 23:49:08 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324149; cv=none; b=m8rYmS2/7CXC73lNHJVkVsOq4b1ZHA588V4HTioOif8gLXEOdKhDmxIFvxosjHUF6lbhb9mFq+DSviWStFXxbs+erOvVBJrd85SLeZ6kGKReM+0d7tRvTcA+nNFft0HEWFp8onmIunvj2SDFm7bgQGlBjHb9EYSdWY0FWXpa6c8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324149; c=relaxed/simple; bh=IzTEcDebd2Jwpb/mHtM3aH2GYrOGj5CQjm4gi4PxzwY=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=W4GpwGYmgGj+i9yalQ7XxGnu1XaW2bIvy/uDHWRa+N7949/zni2qss5QDV7RiFWuHKuujEL1Sa7msPNIkMcitm7qSh/brNh5NXPpmYiUzVJ3XVKNYdg02o8BRld2n/RzUFbAhEiErudThio4/B7rUmIvC19BemxxioR4Go0h+Ro= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=hI/8JcuG; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="hI/8JcuG" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 8BD58C43399; Sun, 24 Mar 2024 23:49:07 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324148; bh=IzTEcDebd2Jwpb/mHtM3aH2GYrOGj5CQjm4gi4PxzwY=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=hI/8JcuGkwWhGVxBG8Sw5xLdBQIExdTHFxNGiUadVbmCBOk8vT/gC7ECD49HThaBo i7tSaS4EhUTr1DPrasHSdZKu0hCQaI2GYD0M9dvL5ybAK2/AYPwQAT7Z0mBZUF9oQK ixx1pAc9OQNe5FUc4FvdMvSj1EF3GZx0BvWjU9n4TENiF6zDRbq5O7gUhUj1uHQkGO th931oj6oiVUdFYr67FkJZhtAmPTUHn50HQO1dZ0Aq5kfl/UUItzH9VHY6pK+lOllN yawXk4/4JY7sQC0MdTj2epNI1aCf8o2R6vs9WxiIvRE8Cl55FhjzKiLxtR5FVE1L+J wpEHEYaJxYEoQ== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Luca Weiss , Daniel Thompson , Lee Jones , Sasha Levin Subject: [PATCH 5.4 144/183] backlight: lm3630a: Initialize backlight_properties on init Date: Sun, 24 Mar 2024 19:45:57 -0400 Message-ID: <20240324234638.1355609-145-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Luca Weiss [ Upstream commit ad9aeb0e3aa90ebdad5fabf9c21783740eb95907 ] The backlight_properties struct should be initialized to zero before using, otherwise there will be some random values in the struct. Fixes: 0c2a665a648e ("backlight: add Backlight driver for lm3630 chip") Signed-off-by: Luca Weiss Reviewed-by: Daniel Thompson Link: https://lore.kernel.org/r/20240220-lm3630a-fixups-v1-1-9ca62f7e4a33@z= 3ntu.xyz Signed-off-by: Lee Jones Signed-off-by: Sasha Levin --- drivers/video/backlight/lm3630a_bl.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/video/backlight/lm3630a_bl.c b/drivers/video/backlight= /lm3630a_bl.c index 8096202fbe5d5..a381b3990986d 100644 --- a/drivers/video/backlight/lm3630a_bl.c +++ b/drivers/video/backlight/lm3630a_bl.c @@ -337,6 +337,7 @@ static int lm3630a_backlight_register(struct lm3630a_ch= ip *pchip) struct backlight_properties props; const char *label; =20 + memset(&props, 0, sizeof(struct backlight_properties)); props.type =3D BACKLIGHT_RAW; if (pdata->leda_ctrl !=3D LM3630A_LEDA_DISABLE) { props.brightness =3D pdata->leda_init_brt; --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 6E945180B9A; Sun, 24 Mar 2024 23:49:09 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324149; cv=none; b=ONDIhof5vRC0nYDl8Ner97dfm7+FGwD7Ak1dGI2rVEMJte9E0nIqD6YnMMKyGVQoynnvhERLgZhkhxz0KdquGx8C4b7LReCl6RgpjXwIFpAym2YvfUIoP3BsU1/aDWkL9dOd3xlxz9zy6G5Tqj67WDT0p4qZ8EJyygK8Unpy2k0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324149; c=relaxed/simple; bh=DkPsYCJzAMNA9hIGOY0tKbqRcqHXIfHtmZWh/cCKJbY=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=gw9dQMSPpcptYD87umn55ltAt3AbxQvEtVlk4I08Zxrpo8f7tjhcWYX6DuX752czoH7MlYpNdZPnqumw8xk+y0mhl33CKySHVQbF3udoG9gC43YjX/sXYTPaSOwAVYA267zgbhfjHjXPVXHW6QVzyK1nrz6F0e+plTzBky6S1z8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=W+DM1k1+; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="W+DM1k1+" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 8AEB1C433A6; Sun, 24 Mar 2024 23:49:08 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324149; bh=DkPsYCJzAMNA9hIGOY0tKbqRcqHXIfHtmZWh/cCKJbY=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=W+DM1k1+/CtmmosI7h7gWjsDWLPSQ7gKK5ALiWgwzH4d946GfLKsYxW4sKglY23Wb i//KCv7GzyySlkiZqFRl+0l393fnkBNsw6vTUHxDm1Tn+6laQUSbU8Bu7u5fUHhhd5 uwAD8Oo9XZ70HKfq2a4T9Q3Gt8+tM3BygbsBR/KnE7Id881bOfNKxFdGxRFGn5lG9k CrO4QyemMZmmNMs17v+l9ZgIU+4plYp8utR6dX+PRwxf+wRTz9zltw/nDH7bl8T/7+ fXOe4RutCY4z7T9C8O2BpOVXyRcVSC1t0zVMOx7Xji37ZCZ82icXkvtpdaHwIHQMgA XSyDiPbKNgd7w== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Luca Weiss , Daniel Thompson , Lee Jones , Sasha Levin Subject: [PATCH 5.4 145/183] backlight: lm3630a: Don't set bl->props.brightness in get_brightness Date: Sun, 24 Mar 2024 19:45:58 -0400 Message-ID: <20240324234638.1355609-146-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Luca Weiss [ Upstream commit 4bf7ddd2d2f0f8826f25f74c7eba4e2c323a1446 ] There's no need to set bl->props.brightness, the get_brightness function is just supposed to return the current brightness and not touch the struct. With that done we can also remove the 'goto out' and just return the value. Fixes: 0c2a665a648e ("backlight: add Backlight driver for lm3630 chip") Signed-off-by: Luca Weiss Reviewed-by: Daniel Thompson Link: https://lore.kernel.org/r/20240220-lm3630a-fixups-v1-2-9ca62f7e4a33@z= 3ntu.xyz Signed-off-by: Lee Jones Signed-off-by: Sasha Levin --- drivers/video/backlight/lm3630a_bl.c | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/drivers/video/backlight/lm3630a_bl.c b/drivers/video/backlight= /lm3630a_bl.c index a381b3990986d..8d22ba62d78b0 100644 --- a/drivers/video/backlight/lm3630a_bl.c +++ b/drivers/video/backlight/lm3630a_bl.c @@ -227,7 +227,7 @@ static int lm3630a_bank_a_get_brightness(struct backlig= ht_device *bl) if (rval < 0) goto out_i2c_err; brightness |=3D rval; - goto out; + return brightness; } =20 /* disable sleep */ @@ -238,11 +238,8 @@ static int lm3630a_bank_a_get_brightness(struct backli= ght_device *bl) rval =3D lm3630a_read(pchip, REG_BRT_A); if (rval < 0) goto out_i2c_err; - brightness =3D rval; + return rval; =20 -out: - bl->props.brightness =3D brightness; - return bl->props.brightness; out_i2c_err: dev_err(pchip->dev, "i2c failed to access register\n"); return 0; @@ -304,7 +301,7 @@ static int lm3630a_bank_b_get_brightness(struct backlig= ht_device *bl) if (rval < 0) goto out_i2c_err; brightness |=3D rval; - goto out; + return brightness; } =20 /* disable sleep */ @@ -315,11 +312,8 @@ static int lm3630a_bank_b_get_brightness(struct backli= ght_device *bl) rval =3D lm3630a_read(pchip, REG_BRT_B); if (rval < 0) goto out_i2c_err; - brightness =3D rval; + return rval; =20 -out: - bl->props.brightness =3D brightness; - return bl->props.brightness; out_i2c_err: dev_err(pchip->dev, "i2c failed to access register\n"); return 0; --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 5FEBF1826E9; Sun, 24 Mar 2024 23:49:10 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324151; cv=none; b=cyK5yYvHD2U73wQfl/GFn1cH7RyaG2jKGcRUXaStPx5BqGcPBgLJd/YIjRAA7Ps/p8QDCYkhea62N4VVec4k856hMSuV0u3DHF+LgyrXGhRDAVlrkMGzH/7Ts5fpGULK818KYWhF1u/9gnLPHCHMjeAcnCgXhd8D8oAHxSawGLE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324151; c=relaxed/simple; bh=3seKHVoN8/gBs3/qRcJQnELvobzcetvAIc5iZRBAZi0=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=NOlFi7xt8LjdR3D+sZDWwk/ev+Dzlgx9IVoA4O+GQKnDAvbs5JX65udMl1Nv0qt74uCaOmMVflz7gwBVrFZ6Ow8F15W4+wB4AEHxKNXvOYPjRRWSXew/Hm5JTP8RuVGup7yFKjlNFuKQhCnxlR6gcX1hD+2kMLyj4iN31Dp0CVo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=hMqSJA98; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="hMqSJA98" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 90E9EC43399; Sun, 24 Mar 2024 23:49:09 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324150; bh=3seKHVoN8/gBs3/qRcJQnELvobzcetvAIc5iZRBAZi0=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=hMqSJA98KW45yuCZ82+6rz2b+wRtodV3UhbJsU+f6hE8H9nQdXxZZinR44+QS9ClL wNlRG2K5apWKT4yueziia9BUdZIbWgqNRDCipXnWtJ42FGn/I2+/NorlmE7RPAaYXB edLviICg/Apx65r0AqTJss+ZCDFiC2DaHNhxLYZRKI1HXC2GwMRpPSAIpY6E2bCrKx 6xzQUBQX9pT+8xra6Izkn7FxMMxGmFHgSccv5SCJQOpjl8/ub+I+NFUNUAdJt36Gn6 9nIW24WpaMiU2YXUQEsuLYuCNEJRjJIv3LhCrLXoPaB4fOrNY/cGxB5o4tc3GP03ol Z++vdcubzLjng== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Daniel Thompson , Lee Jones , Sasha Levin Subject: [PATCH 5.4 146/183] backlight: da9052: Fully initialize backlight_properties during probe Date: Sun, 24 Mar 2024 19:45:59 -0400 Message-ID: <20240324234638.1355609-147-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Daniel Thompson [ Upstream commit 0285e9efaee8276305db5c52a59baf84e9731556 ] props is stack allocated and the fields that are not explcitly set by the probe function need to be zeroed or we'll get undefined behaviour (especially so power/blank states)! Fixes: 6ede3d832aaa ("backlight: add driver for DA9052/53 PMIC v1") Signed-off-by: Daniel Thompson Link: https://lore.kernel.org/r/20240220153532.76613-2-daniel.thompson@lina= ro.org Signed-off-by: Lee Jones Signed-off-by: Sasha Levin --- drivers/video/backlight/da9052_bl.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/video/backlight/da9052_bl.c b/drivers/video/backlight/= da9052_bl.c index 882359dd288c0..aa00379392a0f 100644 --- a/drivers/video/backlight/da9052_bl.c +++ b/drivers/video/backlight/da9052_bl.c @@ -117,6 +117,7 @@ static int da9052_backlight_probe(struct platform_devic= e *pdev) wleds->led_reg =3D platform_get_device_id(pdev)->driver_data; wleds->state =3D DA9052_WLEDS_OFF; =20 + memset(&props, 0, sizeof(struct backlight_properties)); props.type =3D BACKLIGHT_RAW; props.max_brightness =3D DA9052_MAX_BRIGHTNESS; =20 --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 483DE1826ED; Sun, 24 Mar 2024 23:49:11 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324152; cv=none; b=ZXbqYlzTKnqGk6q+UKuOl7+GH6+f1+mxMhp/1lcM9Dimvbdgt3q3vJR0qsp0Of0NaAfW2LzT1sqsU7/2Uzb5MeuvUd/wg4NhgtRLREELzcrwd8gEVakejo4Chja0E4CaRjcOKo2vicKuFU6R5LQXId/VrGh6OFbqR4+xGoueoYs= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324152; c=relaxed/simple; bh=sEYKigNfaix1DXTkbduGtVqUs9Nej6EnPx1x34vReh0=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=pRJkpxgn702OjxGIafGivShD8e9XAl07g31oXK1dhDeqBjd4bvfyp3F5o1jZjFB2ffWj86JRFmKtnv0eSiob1iW7PPLv1kiPctIOtQo27jrjfwFia1JluQQRGjZ5b2b5Siq7HFhffU1UVyVPAbJIkLkr5dzwJLGWvDqwom6IFaM= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=duzd6peq; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="duzd6peq" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 81614C433F1; Sun, 24 Mar 2024 23:49:10 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324151; bh=sEYKigNfaix1DXTkbduGtVqUs9Nej6EnPx1x34vReh0=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=duzd6peqTuacRD8QsJXJgmFgWOt9fTeIem8Zffq8KwftscqJbuBKHJ/ARQM+dyaAF mv1e4xKxI24aV3zaS0w/M6mkdQkF52+8CywcuS+ynDx5rbss3MZWeRbmhoK0s+lVg8 mi7IAAipaaViYVx7rAU4qCDhYJtUlJHWgx51e2d2PoYrXg/B8hWLWmX2RaNLeXeYGT nVMxo9ZI58QTHk99yqiiiLBsJb/Uyf60yGkJSMvOF6rlCH1DYVCylH60qsSFmpGohl iFMsSShchAM66Ho6VfuNBLjvMt2Gzg2SSCleO3fdnBqWb3BflT4TPDaYBGMqdJFcKj mx9ki5Q5mgPrQ== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Daniel Thompson , Lee Jones , Sasha Levin Subject: [PATCH 5.4 147/183] backlight: lm3639: Fully initialize backlight_properties during probe Date: Sun, 24 Mar 2024 19:46:00 -0400 Message-ID: <20240324234638.1355609-148-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Daniel Thompson [ Upstream commit abb5a5d951fbea3feb5c4ba179b89bb96a1d3462 ] props is stack allocated and the fields that are not explcitly set by the probe function need to be zeroed or we'll get undefined behaviour (especially so power/blank states)! Fixes: 0f59858d5119 ("backlight: add new lm3639 backlight driver") Signed-off-by: Daniel Thompson Link: https://lore.kernel.org/r/20240220153532.76613-3-daniel.thompson@lina= ro.org Signed-off-by: Lee Jones Signed-off-by: Sasha Levin --- drivers/video/backlight/lm3639_bl.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/video/backlight/lm3639_bl.c b/drivers/video/backlight/= lm3639_bl.c index 48c04155a5f9d..bb617f4673e94 100644 --- a/drivers/video/backlight/lm3639_bl.c +++ b/drivers/video/backlight/lm3639_bl.c @@ -339,6 +339,7 @@ static int lm3639_probe(struct i2c_client *client, } =20 /* backlight */ + memset(&props, 0, sizeof(struct backlight_properties)); props.type =3D BACKLIGHT_RAW; props.brightness =3D pdata->init_brt_led; props.max_brightness =3D pdata->max_brt_led; --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 343901826F1; Sun, 24 Mar 2024 23:49:12 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324153; cv=none; b=AzKuzL8embqCfkreIPFRVJZxT+Sfnt9hIPlYUtbSPrJNJzgxpqf01FHlOzIqOTxzc/S+lAgc0BkhisomrjFRJ8lnJ19fyP8eHqSRjPma+z6V5I3pAHyc07t3ohhyioX3gtjbUg6Jz+DsuxVRi/kzb8ytPsYW7UKNKyqYRd9NPc8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324153; c=relaxed/simple; bh=LYhPIjMpKEPwiaOA5bQCN6S1WNeGsEIjM6B9l315d1c=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=Qth4g4EOZA10Dp+ZFx35ly4RWA96Fa6GkL/ELX2pd4EoMzGTNp3vG+JtVpF7Rv2MJHq5qrZHSLEQMAtNofIYBjO29cNhcgdPEm+tIxN2l4DU2AVAVDUaJ1lLBZnTt408LTGAL+AzRt2aH5zLh4sL2SxtEqpj1ZfM3rd7cWKw8Uc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=WOoiTx5M; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="WOoiTx5M" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 6E5A0C43390; Sun, 24 Mar 2024 23:49:11 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324152; bh=LYhPIjMpKEPwiaOA5bQCN6S1WNeGsEIjM6B9l315d1c=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=WOoiTx5MO5C/CIAfm3VkqlyzcauSIV+3E2Gwy9NxBzE+qo7FEDLfqFeXdBoIhk+Ni 5Yz+goY7xUgsNCl7r/DThSa7+MC0VDAZyGXUdWNqjJtl1cpU0Qgs5lIHhBqKTwgZ39 zWmDvauqAkS1CXRN6lRM20c8B4fSiGlEDVEa6miUuQUGlzRj0iTrFxRxdTc0nAPwUH juvgks7Rsmu+VQvE2p+l5WQytyRpQOhhahMyKLzeBFBQZ3j/WcymYGUlXuz/ZCOSrG PiRdO6eiZogpU2z3akM2Skb202zlYFdfg5NrFuubAAJm4rn3Uav39tctQ83cKD3VGE rLeCHzNqpgBtw== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Daniel Thompson , Lee Jones , Sasha Levin Subject: [PATCH 5.4 148/183] backlight: lp8788: Fully initialize backlight_properties during probe Date: Sun, 24 Mar 2024 19:46:01 -0400 Message-ID: <20240324234638.1355609-149-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Daniel Thompson [ Upstream commit 392346827fbe8a7fd573dfb145170d7949f639a6 ] props is stack allocated and the fields that are not explcitly set by the probe function need to be zeroed or we'll get undefined behaviour (especially so power/blank states)! Fixes: c5a51053cf3b ("backlight: add new lp8788 backlight driver") Signed-off-by: Daniel Thompson Link: https://lore.kernel.org/r/20240220153532.76613-4-daniel.thompson@lina= ro.org Signed-off-by: Lee Jones Signed-off-by: Sasha Levin --- drivers/video/backlight/lp8788_bl.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/video/backlight/lp8788_bl.c b/drivers/video/backlight/= lp8788_bl.c index ba42f3fe0c739..d9b95dbd40d30 100644 --- a/drivers/video/backlight/lp8788_bl.c +++ b/drivers/video/backlight/lp8788_bl.c @@ -191,6 +191,7 @@ static int lp8788_backlight_register(struct lp8788_bl *= bl) int init_brt; char *name; =20 + memset(&props, 0, sizeof(struct backlight_properties)); props.type =3D BACKLIGHT_PLATFORM; props.max_brightness =3D MAX_BRIGHTNESS; =20 --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 356141826F2; Sun, 24 Mar 2024 23:49:13 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324153; cv=none; b=DOe6I/VOYthfdtbwFmh4OiRQbKNBMP76gi1Lu6fj3pj3uEmiHwhEV5TrnYrYwJFvx4Hp2NgAZBU2yqp31bv/8fIKI3/f9eu/hqrlrtv7otrfWnzFeTbOti66CZUJnfS0/xJea2w6vJQK6Yd3Obf2eIwf9k7nRBqSdTHGHHOCGt4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324153; c=relaxed/simple; bh=jmfwr9b4WGqYyhKL2RJ0GcThkXvWGfJ4utHVDz5KbWM=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=E/EAhHkiQ8JqcCqsoOYTqUPDSjHS2r5OBN2tdPtmkR9KjNyrDNZUbbAnFdQN3091o/cpOZISqHaCUCmLCjapEaNFo7N/JwJNS8UUZYO/uFGlG1E7+e+kgsTtjs6YQGL+N9WMHlnfOYmqHXGYGwMTAcR681ZNgQ6n8Jo2w2iSfi8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=hc7Ly+Gv; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="hc7Ly+Gv" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 5819BC43394; Sun, 24 Mar 2024 23:49:12 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324153; bh=jmfwr9b4WGqYyhKL2RJ0GcThkXvWGfJ4utHVDz5KbWM=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=hc7Ly+Gv2J3FV1ZoaTKrQlCag/pY97mm+3xeZULVy/LZ6325GmlOxJvGBXcOz/WJu LS6uRTyBisnFXq4kNvldhTgxebINGM4jI6tmAHrC3RcAErJ3LxGGv4HbT24YeLTcec /L4KEAI78ZUcxhwDXhOYpa/LFqNEznzilc2fluu2R9gvuqX8uHadBVv382M5jBA7PQ eXppbTKqGfqLnVwW5auyE4RZmLLrBZs4ViKkaEGzCqPyf7L5fG4yu5wMoi+lUPV/b7 Ar6oOKS8igo2QJLjIHGWe6s5HR55ZAGIdp3ZtbemyibmIpV7AUZ6md79/Ni53DWCKN YTxiXRN9Q6FHQ== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Thomas Zimmermann , Jani Nikula , Michael Ellerman , Sasha Levin Subject: [PATCH 5.4 149/183] arch/powerpc: Remove from backlight code Date: Sun, 24 Mar 2024 19:46:02 -0400 Message-ID: <20240324234638.1355609-150-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Thomas Zimmermann [ Upstream commit 838f865802b9f26135ea7df4e30f89ac2f50c23e ] Replace with a forward declaration in to resolve an unnecessary dependency. Remove pmac_backlight_curve_lookup() and struct fb_info from source and header files. The function and the framebuffer struct are unused. No functional changes. v3: * Add Fixes tag (Christophe) * fix typos in commit message (Jani) Signed-off-by: Thomas Zimmermann Fixes: d565dd3b0824 ("[PATCH] powerpc: More via-pmu backlight fixes") Reviewed-by: Jani Nikula Acked-by: Michael Ellerman # (powerpc) Link: https://patchwork.freedesktop.org/patch/msgid/20240306122935.10626-4-= tzimmermann@suse.de Signed-off-by: Sasha Levin --- arch/powerpc/include/asm/backlight.h | 5 ++-- arch/powerpc/platforms/powermac/backlight.c | 26 --------------------- 2 files changed, 2 insertions(+), 29 deletions(-) diff --git a/arch/powerpc/include/asm/backlight.h b/arch/powerpc/include/as= m/backlight.h index 1b5eab62ed047..061a910d74929 100644 --- a/arch/powerpc/include/asm/backlight.h +++ b/arch/powerpc/include/asm/backlight.h @@ -10,15 +10,14 @@ #define __ASM_POWERPC_BACKLIGHT_H #ifdef __KERNEL__ =20 -#include #include =20 +struct backlight_device; + /* For locking instructions, see the implementation file */ extern struct backlight_device *pmac_backlight; extern struct mutex pmac_backlight_mutex; =20 -extern int pmac_backlight_curve_lookup(struct fb_info *info, int value); - extern int pmac_has_backlight_type(const char *type); =20 extern void pmac_backlight_key(int direction); diff --git a/arch/powerpc/platforms/powermac/backlight.c b/arch/powerpc/pla= tforms/powermac/backlight.c index 32224cb489d75..eab339d2059d5 100644 --- a/arch/powerpc/platforms/powermac/backlight.c +++ b/arch/powerpc/platforms/powermac/backlight.c @@ -9,7 +9,6 @@ */ =20 #include -#include #include #include #include @@ -73,31 +72,6 @@ int pmac_has_backlight_type(const char *type) return 0; } =20 -int pmac_backlight_curve_lookup(struct fb_info *info, int value) -{ - int level =3D (FB_BACKLIGHT_LEVELS - 1); - - if (info && info->bl_dev) { - int i, max =3D 0; - - /* Look for biggest value */ - for (i =3D 0; i < FB_BACKLIGHT_LEVELS; i++) - max =3D max((int)info->bl_curve[i], max); - - /* Look for nearest value */ - for (i =3D 0; i < FB_BACKLIGHT_LEVELS; i++) { - int diff =3D abs(info->bl_curve[i] - value); - if (diff < max) { - max =3D diff; - level =3D i; - } - } - - } - - return level; -} - static void pmac_backlight_key_worker(struct work_struct *work) { if (atomic_read(&kernel_backlight_disabled)) --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 4CD591826FA; Sun, 24 Mar 2024 23:49:14 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324154; cv=none; b=Rc+eqEzuQnZanyzC0086xZMniXUIz5oI6MTlQtaGWslDUIySHoilAQjHBVikyRXgjrcIaSJ7foYhnCpKd0TPw/lofXON/7KV3ppGLBufH2AiLdwhACElUCdLZRjvQiobeKrOTxxDokruCHO4ZGnQsKtgOd7qhEX7P5Rdr2ZMkOw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324154; c=relaxed/simple; bh=qUsKLSR4/2S+QJrOFojeB/hmcUgRxhpYTpV7hOoNmWw=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=Pqln+pVU0QMlscj8QVlNFjWLl1/EW2oCe5zfbAOo5jkZwX2cMvGictFCaC3crNA8OscaQZwjgAL3GqLyt1gw6fvdSJY9VFaHqWcfbAzJV4l+dqq58PJPpOSYvw5MdEwulnd2yUR7OwnfNKTy5PYJ8VJsXGBfDPdR0c51MJrWl8o= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=KumwD8hD; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="KumwD8hD" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 5BFC6C43390; Sun, 24 Mar 2024 23:49:13 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324154; bh=qUsKLSR4/2S+QJrOFojeB/hmcUgRxhpYTpV7hOoNmWw=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=KumwD8hDm/uILu5Zw3BuFwm9UsnGeAhLEDCY6aud+GwYl25RXPiY0q1uhAuVpGtE2 qzHmZwseyjnP6+BuSljQmZay96/bb5Wp4DJuXWGFW+bqgqeMQgXDUFMpSuqIb4pcWJ ineTwqWUQJ106XZWtLvIJgE9TyPrlBNd3xLI4j0sMsTbUt5EoZXdWcovezPeOfDnv4 J5VS3ZhXN/w9gvUnBr0SnL100BnJ0InfmzKlJKcWxb+cNpMPPh8dEIs4tU6eb2S3yB ZSu0xqVmkQHx9t1FNBu4ZlklqdqQzi+Ci3x3yNTET4qfKKZUnAzBotZ5RG1A4sPCVI cm7Xh7zYKrQ9g== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Sam Ravnborg , "David S. Miller" , Andreas Larsson , Randy Dunlap , Sasha Levin Subject: [PATCH 5.4 150/183] sparc32: Fix section mismatch in leon_pci_grpci Date: Sun, 24 Mar 2024 19:46:03 -0400 Message-ID: <20240324234638.1355609-151-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Sam Ravnborg [ Upstream commit 24338a6ae13cb743ced77da1b3a12c83f08a0c96 ] Passing a datastructre marked _initconst to platform_driver_register() is wrong. Drop the __initconst notation. This fixes the following warnings: WARNING: modpost: vmlinux: section mismatch in reference: grpci1_of_driver+= 0x30 (section: .data) -> grpci1_of_match (section: .init.rodata) WARNING: modpost: vmlinux: section mismatch in reference: grpci2_of_driver+= 0x30 (section: .data) -> grpci2_of_match (section: .init.rodata) Signed-off-by: Sam Ravnborg Cc: "David S. Miller" Cc: Andreas Larsson Fixes: 4154bb821f0b ("sparc: leon: grpci1: constify of_device_id") Fixes: 03949b1cb9f1 ("sparc: leon: grpci2: constify of_device_id") Tested-by: Randy Dunlap # build-tested Reviewed-by: Andreas Larsson Tested-by: Andreas Larsson Signed-off-by: Andreas Larsson Link: https://lore.kernel.org/r/20240224-sam-fix-sparc32-all-builds-v2-7-1f= 186603c5c4@ravnborg.org Signed-off-by: Sasha Levin --- arch/sparc/kernel/leon_pci_grpci1.c | 2 +- arch/sparc/kernel/leon_pci_grpci2.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/arch/sparc/kernel/leon_pci_grpci1.c b/arch/sparc/kernel/leon_p= ci_grpci1.c index e6935d0ac1ec9..c32590bdd3120 100644 --- a/arch/sparc/kernel/leon_pci_grpci1.c +++ b/arch/sparc/kernel/leon_pci_grpci1.c @@ -696,7 +696,7 @@ static int grpci1_of_probe(struct platform_device *ofde= v) return err; } =20 -static const struct of_device_id grpci1_of_match[] __initconst =3D { +static const struct of_device_id grpci1_of_match[] =3D { { .name =3D "GAISLER_PCIFBRG", }, diff --git a/arch/sparc/kernel/leon_pci_grpci2.c b/arch/sparc/kernel/leon_p= ci_grpci2.c index ca22f93d90454..dd06abc61657f 100644 --- a/arch/sparc/kernel/leon_pci_grpci2.c +++ b/arch/sparc/kernel/leon_pci_grpci2.c @@ -887,7 +887,7 @@ static int grpci2_of_probe(struct platform_device *ofde= v) return err; } =20 -static const struct of_device_id grpci2_of_match[] __initconst =3D { +static const struct of_device_id grpci2_of_match[] =3D { { .name =3D "GAISLER_GRPCI2", }, --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 385F6182706; Sun, 24 Mar 2024 23:49:15 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324156; cv=none; b=sh/nbfUhyQUNEM8ZNbmrRrbMZ7Wmz+2xWr1b2tfjH06+5DQtXIk24BF38VEvLY8SmuX6rOhDCLLegcT1n8RhGP+gs8rC1aFNN3ZfmSqSwl6s+M81l4b4OmgWOTVi4BDoEPw+N0C+Uqe8rG411U37bv/ey6mcjYAcxB+D1eSpIcE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324156; c=relaxed/simple; bh=raSnZxxYv+1ksNyxbMF21iR0NoR16Zg/SsHuOY0he4Y=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=XBqnRMhKMuphwPkCSV6vlAGvTmKRZEPAmKHxPAu3yc2am3u06pVhCdrMJAB+FIgFERA5QbkrAcCPrLzx40kIZxpa9DnVq9lJI8hsDdeNte2WR0Cghk5FLEXvWU1M4+lLbKOrYS+DtD3c6xmlTzVozdWgFgwQXgQ/IQ2RF72S8dY= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=tggs57mD; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="tggs57mD" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 70D4CC43394; Sun, 24 Mar 2024 23:49:14 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324155; bh=raSnZxxYv+1ksNyxbMF21iR0NoR16Zg/SsHuOY0he4Y=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=tggs57mD8huj06SB+YltfjMUSQkJnmTrr/Y38mNJWpJJYTZJT2WIOg1qH/IA3n21Z WJBuyNZDRNOF/U3ZGLWwH+8Zc9I15eSrX5lU853b8/uqz3YBqCARY88AehVnB6bdwr BE2Ixrf/KiQv37f2oW3zcI389W2kDd4NI+XtQc2FEYsbTWzLyFy3ckq87H/8IS3G4E 4zzLkDOkzI0vVJ15WnRNtNGsXSkDK3KIZ0d3SE1AVGIZshQuyZgnFk76LFAB8NlSkV C0mU35rDrD85AbTIZI/jBgcwFPo+usB5hR2Mlv/IBGMjhbH7AA9pOL3d7FGxsbwPlq ueMLOvpDCY3qw== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Bryan O'Donoghue , Stephen Boyd , Sasha Levin Subject: [PATCH 5.4 151/183] clk: Fix clk_core_get NULL dereference Date: Sun, 24 Mar 2024 19:46:04 -0400 Message-ID: <20240324234638.1355609-152-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Bryan O'Donoghue [ Upstream commit e97fe4901e0f59a0bfd524578fe3768f8ca42428 ] It is possible for clk_core_get to dereference a NULL in the following sequence: clk_core_get() of_clk_get_hw_from_clkspec() __of_clk_get_hw_from_provider() __clk_get_hw() __clk_get_hw() can return NULL which is dereferenced by clk_core_get() at hw->core. Prior to commit dde4eff47c82 ("clk: Look for parents with clkdev based clk_lookups") the check IS_ERR_OR_NULL() was performed which would have caught the NULL. Reading the description of this function it talks about returning NULL but that cannot be so at the moment. Update the function to check for hw before dereferencing it and return NULL if hw is NULL. Fixes: dde4eff47c82 ("clk: Look for parents with clkdev based clk_lookups") Signed-off-by: Bryan O'Donoghue Link: https://lore.kernel.org/r/20240302-linux-next-24-03-01-simple-clock-f= ixes-v1-1-25f348a5982b@linaro.org Signed-off-by: Stephen Boyd Signed-off-by: Sasha Levin --- drivers/clk/clk.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/clk/clk.c b/drivers/clk/clk.c index 661d456fb0adf..67051ca60920a 100644 --- a/drivers/clk/clk.c +++ b/drivers/clk/clk.c @@ -425,6 +425,9 @@ static struct clk_core *clk_core_get(struct clk_core *c= ore, u8 p_index) if (IS_ERR(hw)) return ERR_CAST(hw); =20 + if (!hw) + return NULL; + return hw->core; } =20 --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 1E3EA18270C; Sun, 24 Mar 2024 23:49:16 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324157; cv=none; b=Rq7pWiO/3YUGN7EDSPlJvyBo0gId7XHs2Ib5oFh7/SevGOWjipNnJIMlg6jGQHh9tUZHc25XRxRsPn5Coxt7HdAYwO1ZYU1HfR0OiAteOXAtGwesp0d7ulFkCbKvdO1Sik46jCSxzwWLpF93rVRnVbM/2xWBjv/YmUWh9/g/5/g= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324157; c=relaxed/simple; bh=LfjZMeh8B0UJYHITRDVD2721PgS92r/hA3GJ6dfo/5c=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=IllIHJbV/PO10Pru8diLsM3uA0CNtVW29cxK9DrRe3eDE9k00ed6gwgjjywGOHQByYE8sQcXKhjITlsZ+wdZDNHDSwc73wbBR9x0UhcxiGfR02/YJLHgbp58o50M3Q0RHU1as5S8VyJ0jl3aWfFWFnajIvyoDrdBF+ItF5AwPB4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=Cb8GrQeT; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="Cb8GrQeT" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 5D16FC433F1; Sun, 24 Mar 2024 23:49:15 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324156; bh=LfjZMeh8B0UJYHITRDVD2721PgS92r/hA3GJ6dfo/5c=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Cb8GrQeTNkyQNsVJjlk8uFWvSTWq+fP1YFYCu9XCmHhE2x21FjvIEgaQgF9ltRI6b kWpK6ilBUC/FZQEKFfXK/VqyyV3LLrVxeg3+lzmnMP5sgPUSXe8WhhKMBhyEirI9LK ANQejRUHhuESO/XybMcwXudc3gWRDmIzy29uQumXZdCfGMRNGzjk7XCRKSPf1ZSf5H UQDUMnmAWEiyzDFG/UBYjE/HkrWo+MTK3wUhGkOxxEcC6AvLKxWPVfl0pYRxkzI7Fq NSvj/dHSYlk5mRLyF8f5T5XdxKc0uUQeTubkw2FFuQNKwMjil6qtH9rsGSzCE19TWl Luqj/oeXg0twA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Johan Carlsson , Takashi Iwai , Sasha Levin Subject: [PATCH 5.4 152/183] ALSA: usb-audio: Stop parsing channels bits when all channels are found. Date: Sun, 24 Mar 2024 19:46:05 -0400 Message-ID: <20240324234638.1355609-153-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Johan Carlsson [ Upstream commit a39d51ff1f52cd0b6fe7d379ac93bd8b4237d1b7 ] If a usb audio device sets more bits than the amount of channels it could write outside of the map array. Signed-off-by: Johan Carlsson Fixes: 04324ccc75f9 ("ALSA: usb-audio: add channel map support") Message-ID: <20240313081509.9801-1-johan.carlsson@teenage.engineering> Signed-off-by: Takashi Iwai Signed-off-by: Sasha Levin --- sound/usb/stream.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/sound/usb/stream.c b/sound/usb/stream.c index d35684e5f07f0..967f05d7e205f 100644 --- a/sound/usb/stream.c +++ b/sound/usb/stream.c @@ -301,9 +301,12 @@ static struct snd_pcm_chmap_elem *convert_chmap(int ch= annels, unsigned int bits, c =3D 0; =20 if (bits) { - for (; bits && *maps; maps++, bits >>=3D 1) + for (; bits && *maps; maps++, bits >>=3D 1) { if (bits & 1) chmap->map[c++] =3D *maps; + if (c =3D=3D chmap->channels) + break; + } } else { /* If we're missing wChannelConfig, then guess something to make sure the channel map is not skipped entirely */ --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 09BC4182714; Sun, 24 Mar 2024 23:49:17 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324158; cv=none; b=OLSLpxMUOEF1nKEOIXKjTYtpXqs/5vueKmt2sNlcN4Oni3CoUZ4//szQe78kKoW+Ezx+IjPkYYSCjc7UOTybfa2Du8ktW+uADlAKkEqmcm1qxDjRl8sMo8OF9xXvu3Hrc/so03ViiJ2wAA32WeamXuHMBXvgnsfGZgmix5oo/hg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324158; c=relaxed/simple; bh=EqSQ/IdTyQG233ql2ySExqWSvoh+zGSJMyO2IFT0C40=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=LIgPU0QE3wltBYWBF6AmJKhc0BEzH1vWZH6I2QbmaJypMJdR2mnqYvzrDuF9IUKlddDcAvWOevO0wSzcx3v43KZ3ESyTRuUX69kf+DOAf3kim5X6mfqxKGsUGATG2gPSiyFSB1OcSWhhjEiBkolaglnbLcMUQYcO27gGdQmhkl8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=X/QODIm8; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="X/QODIm8" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 4383EC43390; Sun, 24 Mar 2024 23:49:16 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324156; bh=EqSQ/IdTyQG233ql2ySExqWSvoh+zGSJMyO2IFT0C40=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=X/QODIm8CA6jbRIY5ds995nHqj2HFNv1XZ6vPtVTgyFYimZ6vJbOPnCP7Z4xFltAx crS+7abBbe2NeikcfTZYdOclawH8liTGGtI2xFo5vUQuLgOAgfxOHE9R8lP7aQlYOq BMGE6vLo/UecG/5O2kT7OpyD3TZI9A7+lI2SxH1WR90lbePO257HcUFspqj2lx4pHx a1O/ikPky8F0yDDLQijKxB9cNQQzb+0YWEJ3hVA20zcTas9ptpIh9BSkus2FnPLANV ATh01M87g+2rNZtUDeTnozvMaZ6uTPlI2gPXy7ULAKgvcmWHGInGAaQi/T3A6kcj0w uO5sZh3OgR/pw== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Arnd Bergmann , "Martin K . Petersen" , Sasha Levin Subject: [PATCH 5.4 153/183] scsi: csiostor: Avoid function pointer casts Date: Sun, 24 Mar 2024 19:46:06 -0400 Message-ID: <20240324234638.1355609-154-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Arnd Bergmann [ Upstream commit 9f3dbcb5632d6876226031d552ef6163bb3ad215 ] csiostor uses function pointer casts to keep the csio_ln_ev state machine hidden, but this causes warnings about control flow integrity (KCFI) violations in clang-16 and higher: drivers/scsi/csiostor/csio_lnode.c:1098:33: error: cast from 'void (*)(stru= ct csio_lnode *, enum csio_ln_ev)' to 'csio_sm_state_t' (aka 'void (*)(void= *, unsigned int)') converts to incompatible function type [-Werror,-Wcast-= function-type-strict] 1098 | return (csio_get_state(ln) =3D=3D ((csio_sm_state_t)csio_ln= s_ready)); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~= ~~~ drivers/scsi/csiostor/csio_lnode.c:1369:29: error: cast from 'void (*)(stru= ct csio_lnode *, enum csio_ln_ev)' to 'csio_sm_state_t' (aka 'void (*)(void= *, unsigned int)') converts to incompatible function type [-Werror,-Wcast-= function-type-strict] 1369 | if (csio_get_state(ln) =3D=3D ((csio_sm_state_t)csio_lns_un= init)) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/scsi/csiostor/csio_lnode.c:1373:29: error: cast from 'void (*)(stru= ct csio_lnode *, enum csio_ln_ev)' to 'csio_sm_state_t' (aka 'void (*)(void= *, unsigned int)') converts to incompatible function type [-Werror,-Wcast-= function-type-strict] 1373 | if (csio_get_state(ln) =3D=3D ((csio_sm_state_t)csio_lns_re= ady)) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/scsi/csiostor/csio_lnode.c:1377:29: error: cast from 'void (*)(stru= ct csio_lnode *, enum csio_ln_ev)' to 'csio_sm_state_t' (aka 'void (*)(void= *, unsigned int)') converts to incompatible function type [-Werror,-Wcast-= function-type-strict] 1377 | if (csio_get_state(ln) =3D=3D ((csio_sm_state_t)csio_lns_of= fline)) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Move the enum into a shared header so the correct types can be used without the need for casts. Fixes: a3667aaed569 ("[SCSI] csiostor: Chelsio FCoE offload driver") Signed-off-by: Arnd Bergmann Link: https://lore.kernel.org/r/20240213100518.457623-1-arnd@kernel.org Signed-off-by: Martin K. Petersen Signed-off-by: Sasha Levin --- drivers/scsi/csiostor/csio_defs.h | 18 ++++++++++++++++-- drivers/scsi/csiostor/csio_lnode.c | 8 ++++---- drivers/scsi/csiostor/csio_lnode.h | 13 ------------- 3 files changed, 20 insertions(+), 19 deletions(-) diff --git a/drivers/scsi/csiostor/csio_defs.h b/drivers/scsi/csiostor/csio= _defs.h index c38017b4af982..e50e93e7fe5a1 100644 --- a/drivers/scsi/csiostor/csio_defs.h +++ b/drivers/scsi/csiostor/csio_defs.h @@ -73,7 +73,21 @@ csio_list_deleted(struct list_head *list) #define csio_list_prev(elem) (((struct list_head *)(elem))->prev) =20 /* State machine */ -typedef void (*csio_sm_state_t)(void *, uint32_t); +struct csio_lnode; + +/* State machine evets */ +enum csio_ln_ev { + CSIO_LNE_NONE =3D (uint32_t)0, + CSIO_LNE_LINKUP, + CSIO_LNE_FAB_INIT_DONE, + CSIO_LNE_LINK_DOWN, + CSIO_LNE_DOWN_LINK, + CSIO_LNE_LOGO, + CSIO_LNE_CLOSE, + CSIO_LNE_MAX_EVENT, +}; + +typedef void (*csio_sm_state_t)(struct csio_lnode *ln, enum csio_ln_ev evt= ); =20 struct csio_sm { struct list_head sm_list; @@ -83,7 +97,7 @@ struct csio_sm { static inline void csio_set_state(void *smp, void *state) { - ((struct csio_sm *)smp)->sm_state =3D (csio_sm_state_t)state; + ((struct csio_sm *)smp)->sm_state =3D state; } =20 static inline void diff --git a/drivers/scsi/csiostor/csio_lnode.c b/drivers/scsi/csiostor/csi= o_lnode.c index c3bf590f5d685..47803268b138f 100644 --- a/drivers/scsi/csiostor/csio_lnode.c +++ b/drivers/scsi/csiostor/csio_lnode.c @@ -1095,7 +1095,7 @@ csio_handle_link_down(struct csio_hw *hw, uint8_t por= tid, uint32_t fcfi, int csio_is_lnode_ready(struct csio_lnode *ln) { - return (csio_get_state(ln) =3D=3D ((csio_sm_state_t)csio_lns_ready)); + return (csio_get_state(ln) =3D=3D csio_lns_ready); } =20 /*************************************************************************= ****/ @@ -1367,15 +1367,15 @@ csio_free_fcfinfo(struct kref *kref) void csio_lnode_state_to_str(struct csio_lnode *ln, int8_t *str) { - if (csio_get_state(ln) =3D=3D ((csio_sm_state_t)csio_lns_uninit)) { + if (csio_get_state(ln) =3D=3D csio_lns_uninit) { strcpy(str, "UNINIT"); return; } - if (csio_get_state(ln) =3D=3D ((csio_sm_state_t)csio_lns_ready)) { + if (csio_get_state(ln) =3D=3D csio_lns_ready) { strcpy(str, "READY"); return; } - if (csio_get_state(ln) =3D=3D ((csio_sm_state_t)csio_lns_offline)) { + if (csio_get_state(ln) =3D=3D csio_lns_offline) { strcpy(str, "OFFLINE"); return; } diff --git a/drivers/scsi/csiostor/csio_lnode.h b/drivers/scsi/csiostor/csi= o_lnode.h index 372a67d122d38..607698a0f0631 100644 --- a/drivers/scsi/csiostor/csio_lnode.h +++ b/drivers/scsi/csiostor/csio_lnode.h @@ -53,19 +53,6 @@ extern int csio_fcoe_rnodes; extern int csio_fdmi_enable; =20 -/* State machine evets */ -enum csio_ln_ev { - CSIO_LNE_NONE =3D (uint32_t)0, - CSIO_LNE_LINKUP, - CSIO_LNE_FAB_INIT_DONE, - CSIO_LNE_LINK_DOWN, - CSIO_LNE_DOWN_LINK, - CSIO_LNE_LOGO, - CSIO_LNE_CLOSE, - CSIO_LNE_MAX_EVENT, -}; - - struct csio_fcf_info { struct list_head list; uint8_t priority; --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 05B9E182712; Sun, 24 Mar 2024 23:49:18 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324158; cv=none; b=Aan7emsv7Dis/AwCDnZESwks6XdkszEBpMBlerb9lyUClPYvJiXceCV87LyjtlOONcEJgt9c3Co9m17LMuCugWMlsj4UfmyAxn6X5b46eGhc3yI3/x/u+u/bSYyNSI8mZzz9BdKOth4osoyKt25kzlnaj3+/Iolp3S3EOgoyZ6c= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324158; c=relaxed/simple; bh=9sr5xbSGjYYNsmUYabCzZmJYK4fu6ed6dInxnPfYfEo=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=MVWmoceONWKBkp8f8rQ+UHL51adHG2msy3GQI8aZthdRwRfdkSzCCbnSYmLVXCpZs7UhSTeBMGSxoQJvxi8oNZcfMkguArvtQTycOhtMn4ra10P52d2OONl6VxGIx7hMi5AcqzMVc2in9azRCEA2ng5hSEFys3P9begdldo1yOc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=r6QHZU8A; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="r6QHZU8A" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 2D691C43399; Sun, 24 Mar 2024 23:49:17 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324157; bh=9sr5xbSGjYYNsmUYabCzZmJYK4fu6ed6dInxnPfYfEo=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=r6QHZU8AR1hOW7cqQPk7O1nHKYsonV/zH570Zhk0NVNPgg0H29f1LcMMXRlRbsSzw b00uDed3KkHcXvU+Qz+8cOcOg04iQdzH/QC2pj6jHdyX9cYlInqpCzNh0VXjYMgTTa UHWjK4hwNqmNxFV/oQTp+2iCn9PK9cRJ2AxVZuU4nZzAPWnTfBmhfjElSwVNbkvF0o P/NPm1tiZlu3PTpSmTIlDOQVDo6y5szsNqycxcML4L8i2SDQQvEoJm3wbCrEytdB0Y ke+I1xg4NIwM4yWoQ1vTAPrVC4mMCAjOt1yTDfo1SBLylbIcKGWeNDaAr7FxV2YUCw lHrWcMVbSSNSg== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Shifeng Li , Jason Gunthorpe , Jason Gunthorpe , Sasha Levin Subject: [PATCH 5.4 154/183] RDMA/device: Fix a race between mad_client and cm_client init Date: Sun, 24 Mar 2024 19:46:07 -0400 Message-ID: <20240324234638.1355609-155-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Shifeng Li [ Upstream commit 7a8bccd8b29c321ac181369b42b04fecf05f98e2 ] The mad_client will be initialized in enable_device_and_get(), while the devices_rwsem will be downgraded to a read semaphore. There is a window that leads to the failed initialization for cm_client, since it can not get matched mad port from ib_mad_port_list, and the matched mad port will be added to the list after that. mad_client | cm_client ------------------|-------------------------------------------------------- ib_register_device| enable_device_and_get down_write(&devices_rwsem) xa_set_mark(&devices, DEVICE_REGISTERED) downgrade_write(&devices_rwsem) | |ib_cm_init |ib_register_client(&cm_client) |down_read(&devices_rwsem) |xa_for_each_marked (&devices, DEVICE_REGISTERED) |add_client_context |cm_add_one |ib_register_mad_agent |ib_get_mad_port |__ib_get_mad_port |list_for_each_entry(entry, &ib_mad_port_list, port_list) |return NULL |up_read(&devices_rwsem) | add_client_context| ib_mad_init_device| ib_mad_port_open | list_add_tail(&port_priv->port_list, &ib_mad_port_list) up_read(&devices_rwsem) | Fix it by using down_write(&devices_rwsem) in ib_register_client(). Fixes: d0899892edd0 ("RDMA/device: Provide APIs from the core code to help = unregistration") Link: https://lore.kernel.org/r/20240203035313.98991-1-lishifeng@sangfor.co= m.cn Suggested-by: Jason Gunthorpe Signed-off-by: Shifeng Li Signed-off-by: Jason Gunthorpe Signed-off-by: Sasha Levin --- drivers/infiniband/core/device.c | 37 +++++++++++++++++++------------- 1 file changed, 22 insertions(+), 15 deletions(-) diff --git a/drivers/infiniband/core/device.c b/drivers/infiniband/core/dev= ice.c index a12ee8ef27a89..c7c3b9bae938c 100644 --- a/drivers/infiniband/core/device.c +++ b/drivers/infiniband/core/device.c @@ -1700,7 +1700,7 @@ static int assign_client_id(struct ib_client *client) { int ret; =20 - down_write(&clients_rwsem); + lockdep_assert_held(&clients_rwsem); /* * The add/remove callbacks must be called in FIFO/LIFO order. To * achieve this we assign client_ids so they are sorted in @@ -1709,14 +1709,11 @@ static int assign_client_id(struct ib_client *clien= t) client->client_id =3D highest_client_id; ret =3D xa_insert(&clients, client->client_id, client, GFP_KERNEL); if (ret) - goto out; + return ret; =20 highest_client_id++; xa_set_mark(&clients, client->client_id, CLIENT_REGISTERED); - -out: - up_write(&clients_rwsem); - return ret; + return 0; } =20 static void remove_client_id(struct ib_client *client) @@ -1746,25 +1743,35 @@ int ib_register_client(struct ib_client *client) { struct ib_device *device; unsigned long index; + bool need_unreg =3D false; int ret; =20 refcount_set(&client->uses, 1); init_completion(&client->uses_zero); + + /* + * The devices_rwsem is held in write mode to ensure that a racing + * ib_register_device() sees a consisent view of clients and devices. + */ + down_write(&devices_rwsem); + down_write(&clients_rwsem); ret =3D assign_client_id(client); if (ret) - return ret; + goto out; =20 - down_read(&devices_rwsem); + need_unreg =3D true; xa_for_each_marked (&devices, index, device, DEVICE_REGISTERED) { ret =3D add_client_context(device, client); - if (ret) { - up_read(&devices_rwsem); - ib_unregister_client(client); - return ret; - } + if (ret) + goto out; } - up_read(&devices_rwsem); - return 0; + ret =3D 0; +out: + up_write(&clients_rwsem); + up_write(&devices_rwsem); + if (need_unreg && ret) + ib_unregister_client(client); + return ret; } EXPORT_SYMBOL(ib_register_client); =20 --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 6599C182719; Sun, 24 Mar 2024 23:49:19 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324159; cv=none; b=AFRtrIW/AyhVWAxKzBxwtxj113DQ1B/Y3aDWUD4efeBOuu3uDQ37ggs1prymkFlKCchVRqV74MIncqyW0zlZUzZRrW86TpKffBMt8OIiJkV+3KUfkkwr/4mYa3dzQVwJXCf0tXyrvzJw+enEfflXM9cFUkXicmIzQqiF9Z3kLhI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324159; c=relaxed/simple; bh=YMMs4rKE/JrIxOl9vv/9pBf6Z6Drk20xRncw7/KxpV8=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=cWAgHjIJWpHrp2rFHZqss+lSlzlfaq52FPTQcKDpPYJTce9sm9D1kq7qc+xPXWltf/aci8O0F0X/StNs4d+5KkBrkhVcKOfUrFKhlFodzKvKFF+9ZYB6TicoFZRIwBi5H5s+glP1HVpEyopBsCeMWzawalPZvJl24mNn2cksKEA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=XFxY+sUS; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="XFxY+sUS" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 2A070C43390; Sun, 24 Mar 2024 23:49:18 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324159; bh=YMMs4rKE/JrIxOl9vv/9pBf6Z6Drk20xRncw7/KxpV8=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=XFxY+sUSvL3HmFEDlxmZu5UEWsornYZI+U5MkXQj1n92eOSnIifxDKexf4Lz+qQej oXdNveqWx6T+5qrvaTZ2s8iTZZtyXfZrJHhQRqGj24MtGf/+BNEUOm10wVRsbAGjSt 8h5pq0Dw8uqDnEhorr3lT/zLQEwb30YCLCQ45UXEzfAdWK2tS89FuL4pbQP6J+qwKf Yq+7h8yDRIKBfzfZ3im5I7hz2O0Icm6F/ghBuVsaU635m07uPsdhb7pZCiX8C4NMdb LhtMVqPuFkoVBZxMLtQXXoTWAobkcwX+5RhozAWmY5H8OkHb3u2XlKNFtIjYmzzpLZ ENgvMa6/9l2Sw== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Arnd Bergmann , Kees Cook , "Martin K . Petersen" , Sasha Levin Subject: [PATCH 5.4 155/183] scsi: bfa: Fix function pointer type mismatch for hcb_qe->cbfn Date: Sun, 24 Mar 2024 19:46:08 -0400 Message-ID: <20240324234638.1355609-156-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Arnd Bergmann [ Upstream commit b69600231f751304db914c63b937f7098ed2895c ] Some callback functions used here take a boolean argument, others take a status argument. This breaks KCFI type checking, so clang now warns about the function pointer cast: drivers/scsi/bfa/bfad_bsg.c:2138:29: error: cast from 'void (*)(void *, enu= m bfa_status)' to 'bfa_cb_cbfn_t' (aka 'void (*)(void *, enum bfa_boolean)'= ) converts to incompatible function type [-Werror,-Wcast-function-type-stri= ct] Assuming the code is actually correct here and the callers always match the argument types of the callee, rework this to replace the explicit cast with a union of the two pointer types. This does not change the behavior of the code, so if something is actually broken here, a larger rework may be necessary. Fixes: 37ea0558b87a ("[SCSI] bfa: Added support to collect and reset fcport= stats") Fixes: 3ec4f2c8bff2 ("[SCSI] bfa: Added support to configure QOS and collec= t stats.") Reviewed-by: Kees Cook Signed-off-by: Arnd Bergmann Link: https://lore.kernel.org/r/20240222124433.2046570-1-arnd@kernel.org Signed-off-by: Martin K. Petersen Signed-off-by: Sasha Levin --- drivers/scsi/bfa/bfa.h | 9 ++++++++- drivers/scsi/bfa/bfa_core.c | 4 +--- drivers/scsi/bfa/bfa_ioc.h | 8 ++++++-- drivers/scsi/bfa/bfad_bsg.c | 11 ++++------- 4 files changed, 19 insertions(+), 13 deletions(-) diff --git a/drivers/scsi/bfa/bfa.h b/drivers/scsi/bfa/bfa.h index 7bd2ba1ad4d11..f30fe324e6ecc 100644 --- a/drivers/scsi/bfa/bfa.h +++ b/drivers/scsi/bfa/bfa.h @@ -20,7 +20,6 @@ struct bfa_s; =20 typedef void (*bfa_isr_func_t) (struct bfa_s *bfa, struct bfi_msg_s *m); -typedef void (*bfa_cb_cbfn_status_t) (void *cbarg, bfa_status_t status); =20 /* * Interrupt message handlers @@ -437,4 +436,12 @@ struct bfa_cb_pending_q_s { (__qe)->data =3D (__data); \ } while (0) =20 +#define bfa_pending_q_init_status(__qe, __cbfn, __cbarg, __data) do { \ + bfa_q_qe_init(&((__qe)->hcb_qe.qe)); \ + (__qe)->hcb_qe.cbfn_status =3D (__cbfn); \ + (__qe)->hcb_qe.cbarg =3D (__cbarg); \ + (__qe)->hcb_qe.pre_rmv =3D BFA_TRUE; \ + (__qe)->data =3D (__data); \ +} while (0) + #endif /* __BFA_H__ */ diff --git a/drivers/scsi/bfa/bfa_core.c b/drivers/scsi/bfa/bfa_core.c index 0f554ebb8f2c6..09819f076699f 100644 --- a/drivers/scsi/bfa/bfa_core.c +++ b/drivers/scsi/bfa/bfa_core.c @@ -1907,15 +1907,13 @@ bfa_comp_process(struct bfa_s *bfa, struct list_hea= d *comp_q) struct list_head *qe; struct list_head *qen; struct bfa_cb_qe_s *hcb_qe; - bfa_cb_cbfn_status_t cbfn; =20 list_for_each_safe(qe, qen, comp_q) { hcb_qe =3D (struct bfa_cb_qe_s *) qe; if (hcb_qe->pre_rmv) { /* qe is invalid after return, dequeue before cbfn() */ list_del(qe); - cbfn =3D (bfa_cb_cbfn_status_t)(hcb_qe->cbfn); - cbfn(hcb_qe->cbarg, hcb_qe->fw_status); + hcb_qe->cbfn_status(hcb_qe->cbarg, hcb_qe->fw_status); } else hcb_qe->cbfn(hcb_qe->cbarg, BFA_TRUE); } diff --git a/drivers/scsi/bfa/bfa_ioc.h b/drivers/scsi/bfa/bfa_ioc.h index 933a1c3890ff5..5e568d6d7b261 100644 --- a/drivers/scsi/bfa/bfa_ioc.h +++ b/drivers/scsi/bfa/bfa_ioc.h @@ -361,14 +361,18 @@ struct bfa_reqq_wait_s { void *cbarg; }; =20 -typedef void (*bfa_cb_cbfn_t) (void *cbarg, bfa_boolean_t complete); +typedef void (*bfa_cb_cbfn_t) (void *cbarg, bfa_boolean_t complete); +typedef void (*bfa_cb_cbfn_status_t) (void *cbarg, bfa_status_t status); =20 /* * Generic BFA callback element. */ struct bfa_cb_qe_s { struct list_head qe; - bfa_cb_cbfn_t cbfn; + union { + bfa_cb_cbfn_status_t cbfn_status; + bfa_cb_cbfn_t cbfn; + }; bfa_boolean_t once; bfa_boolean_t pre_rmv; /* set for stack based qe(s) */ bfa_status_t fw_status; /* to access fw status in comp proc */ diff --git a/drivers/scsi/bfa/bfad_bsg.c b/drivers/scsi/bfa/bfad_bsg.c index a76c968dbac59..9f5964944d787 100644 --- a/drivers/scsi/bfa/bfad_bsg.c +++ b/drivers/scsi/bfa/bfad_bsg.c @@ -2135,8 +2135,7 @@ bfad_iocmd_fcport_get_stats(struct bfad_s *bfad, void= *cmd) struct bfa_cb_pending_q_s cb_qe; =20 init_completion(&fcomp.comp); - bfa_pending_q_init(&cb_qe, (bfa_cb_cbfn_t)bfad_hcb_comp, - &fcomp, &iocmd->stats); + bfa_pending_q_init_status(&cb_qe, bfad_hcb_comp, &fcomp, &iocmd->stats); spin_lock_irqsave(&bfad->bfad_lock, flags); iocmd->status =3D bfa_fcport_get_stats(&bfad->bfa, &cb_qe); spin_unlock_irqrestore(&bfad->bfad_lock, flags); @@ -2159,7 +2158,7 @@ bfad_iocmd_fcport_reset_stats(struct bfad_s *bfad, vo= id *cmd) struct bfa_cb_pending_q_s cb_qe; =20 init_completion(&fcomp.comp); - bfa_pending_q_init(&cb_qe, (bfa_cb_cbfn_t)bfad_hcb_comp, &fcomp, NULL); + bfa_pending_q_init_status(&cb_qe, bfad_hcb_comp, &fcomp, NULL); =20 spin_lock_irqsave(&bfad->bfad_lock, flags); iocmd->status =3D bfa_fcport_clear_stats(&bfad->bfa, &cb_qe); @@ -2443,8 +2442,7 @@ bfad_iocmd_qos_get_stats(struct bfad_s *bfad, void *c= md) struct bfa_fcport_s *fcport =3D BFA_FCPORT_MOD(&bfad->bfa); =20 init_completion(&fcomp.comp); - bfa_pending_q_init(&cb_qe, (bfa_cb_cbfn_t)bfad_hcb_comp, - &fcomp, &iocmd->stats); + bfa_pending_q_init_status(&cb_qe, bfad_hcb_comp, &fcomp, &iocmd->stats); =20 spin_lock_irqsave(&bfad->bfad_lock, flags); WARN_ON(!bfa_ioc_get_fcmode(&bfad->bfa.ioc)); @@ -2474,8 +2472,7 @@ bfad_iocmd_qos_reset_stats(struct bfad_s *bfad, void = *cmd) struct bfa_fcport_s *fcport =3D BFA_FCPORT_MOD(&bfad->bfa); =20 init_completion(&fcomp.comp); - bfa_pending_q_init(&cb_qe, (bfa_cb_cbfn_t)bfad_hcb_comp, - &fcomp, NULL); + bfa_pending_q_init_status(&cb_qe, bfad_hcb_comp, &fcomp, NULL); =20 spin_lock_irqsave(&bfad->bfad_lock, flags); WARN_ON(!bfa_ioc_get_fcmode(&bfad->bfa.ioc)); --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 5D7CE182747; Sun, 24 Mar 2024 23:49:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324162; cv=none; b=FZv+RngouE8gMYsL9g2tWEJekaOY9Qgqvmj9K/0uy5P7sTHRvQNO0WbmLNiIQg00VuEy3h35BsgLdYeUS/y7uHKncPx+ViCC0WzqAv7TKxVm5+62RfiR9OMcnoEImnIzgl1NJ/o2DlxeVWmwxlEMY1z0my9kuweO/20TbXTWtFo= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324162; c=relaxed/simple; bh=pP09BQR5vGUKD4rX+sTintaCEvicXfwuzCjxTMxtbw8=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=patv23yqtj8R37DUdubo7eW5OxFZYPvSZrdgd21PBqWb3qppahvcAVsqQ/EGLekysxxesTkb5pmTAXOZv6kLz5VYNoGOKBOTsJ9jWD9dEvZ02VmJyM6iEJSgKOJqK/FvXtNOSMwDLrbr4oKHd/1HDi6HsjDuJwawZYeZiPj+W/A= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=CVEazqfl; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="CVEazqfl" Received: by smtp.kernel.org (Postfix) with ESMTPSA id DB693C433C7; Sun, 24 Mar 2024 23:49:19 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324161; bh=pP09BQR5vGUKD4rX+sTintaCEvicXfwuzCjxTMxtbw8=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=CVEazqflDcVyh31Wk1pKFKwC4o7ja4ux4QCoOH85y2HfbV/fRQnZq7l7QOHv6GiMl d7oR8fMkv25UTVJ+8RphTJlGST7aUL608+ghgk7cv/efPccX7iqv9nhyBWjdqij7Vm OK6slo9ngj3bJV30QSHr4HtoG6eLxQdIfYUeI8ElnWOe8ZMVCbEAYJVC3uuKg2UGMR t/DNESetryKemoctEMeMsCDQONLrC8jhXrcP7Tw4IZ37MNVHNFIQC3QUYM2KcLqFkl JkCsfJgwhYYgGr6eV3OcueVJKMvNi/kodyu7ebpuw8jDLkhE5gSvUrTlqy8pBvjZHB BPPY5xDMtchvg== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Christophe JAILLET , Benjamin Coddington , Trond Myklebust , Sasha Levin Subject: [PATCH 5.4 156/183] net: sunrpc: Fix an off by one in rpc_sockaddr2uaddr() Date: Sun, 24 Mar 2024 19:46:09 -0400 Message-ID: <20240324234638.1355609-157-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Christophe JAILLET [ Upstream commit d6f4de70f73a106986ee315d7d512539f2f3303a ] The intent is to check if the strings' are truncated or not. So, >=3D should be used instead of >, because strlcat() and snprintf() return the length of the output, excluding the trailing NULL. Fixes: a02d69261134 ("SUNRPC: Provide functions for managing universal addr= esses") Signed-off-by: Christophe JAILLET Reviewed-by: Benjamin Coddington Signed-off-by: Trond Myklebust Signed-off-by: Sasha Levin --- net/sunrpc/addr.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/net/sunrpc/addr.c b/net/sunrpc/addr.c index 0d4a2bb09589c..be2fc88f5bde1 100644 --- a/net/sunrpc/addr.c +++ b/net/sunrpc/addr.c @@ -288,10 +288,10 @@ char *rpc_sockaddr2uaddr(const struct sockaddr *sap, = gfp_t gfp_flags) } =20 if (snprintf(portbuf, sizeof(portbuf), - ".%u.%u", port >> 8, port & 0xff) > (int)sizeof(portbuf)) + ".%u.%u", port >> 8, port & 0xff) >=3D (int)sizeof(portbuf)) return NULL; =20 - if (strlcat(addrbuf, portbuf, sizeof(addrbuf)) > sizeof(addrbuf)) + if (strlcat(addrbuf, portbuf, sizeof(addrbuf)) >=3D sizeof(addrbuf)) return NULL; =20 return kstrdup(addrbuf, gfp_flags); --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 56549182750; Sun, 24 Mar 2024 23:49:22 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324163; cv=none; b=cJEkOsM4pu29aibaFmg+Hl1WfY4uGqH3ob9I1JzvXK6nUEEy9xm9IGXkaSIX7Zic/iMXe3frWW0SFJdYhHNGG8VkqADQArIoQ07ZXv+4CowRjI/89KDv6zpZW19UNrxSThwMSjfZFufc7HjiM2nnsL+pldHi2wFIbNU3PsTRftQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324163; c=relaxed/simple; bh=1HX/XtXY9tKoIkbNvy21lYq1+GU7W/u60Q5A+0A38Ok=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=WVMMqtvojMb6nxMLNRiyff4uDmbR3wIWdnbqwlt4Oe3zGji1oWonYnwjUDc13bfra7QdexRy9R+v24PcfawUdSDcPwbHeSywBvK5VWDOMPutBjMbjgTbyIZk00fD/QjjMGYEuESzQX9XqFq1rIq1493fRbK8VBLsAhSR0zjyV4E= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=BaDf541h; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="BaDf541h" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 7C40EC43390; Sun, 24 Mar 2024 23:49:21 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324162; bh=1HX/XtXY9tKoIkbNvy21lYq1+GU7W/u60Q5A+0A38Ok=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=BaDf541hM585AMZqUhk3k74m59Sm80Lvq28mIeSyShB3sy+3K9hiEMzp5sWwQDElY /kJ1kSOVT2O0OWjSIY0pNj0QRRhej3RX+YtwCqHvIVTrM89tivW9kLuGelh0gTlH4B L73PjtdShQNznCCscZL971aslh7z+OLBTB/gcE+TPJztSEphPU/fYNVuKhKqkthKOC n4D4U6rZ7YHXDxN66kwuEJpX48sFIZsvoPleDpqhkTmjd7Rs4ElW4/KY9WeZFpm0EX 1J8HdsHNOopPhQD4HVuHR3dmX+inmZcUrPa0av/hqAKyR9ZUdAeJcVZkOjDsLOb4ZD Ihx4C79HV55mw== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Ben Wolsieffer , Guenter Roeck , Wim Van Sebroeck , Sasha Levin Subject: [PATCH 5.4 157/183] watchdog: stm32_iwdg: initialize default timeout Date: Sun, 24 Mar 2024 19:46:10 -0400 Message-ID: <20240324234638.1355609-158-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Ben Wolsieffer [ Upstream commit dbd7c0088b7f44aa0b9276ed3449df075a7b5b54 ] The driver never sets a default timeout value, therefore it is initialized to zero. When CONFIG_WATCHDOG_HANDLE_BOOT_ENABLED is enabled, the watchdog is started during probe. The kernel is supposed to automatically ping the watchdog from this point until userspace takes over, but this does not happen if the configured timeout is zero. A zero timeout causes watchdog_need_worker() to return false, so the heartbeat worker does not run and the system therefore resets soon after the driver is probed. This patch fixes this by setting an arbitrary non-zero default timeout. The default could be read from the hardware instead, but I didn't see any reason to add this complexity. This has been tested on an STM32F746. Fixes: 85fdc63fe256 ("drivers: watchdog: stm32_iwdg: set WDOG_HW_RUNNING at= probe") Signed-off-by: Ben Wolsieffer Reviewed-by: Guenter Roeck Link: https://lore.kernel.org/r/20240228182723.12855-1-ben.wolsieffer@hefri= ng.com Signed-off-by: Guenter Roeck Signed-off-by: Wim Van Sebroeck Signed-off-by: Sasha Levin --- drivers/watchdog/stm32_iwdg.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/watchdog/stm32_iwdg.c b/drivers/watchdog/stm32_iwdg.c index 25188d6bbe152..16dd1aab7c676 100644 --- a/drivers/watchdog/stm32_iwdg.c +++ b/drivers/watchdog/stm32_iwdg.c @@ -21,6 +21,8 @@ #include #include =20 +#define DEFAULT_TIMEOUT 10 + /* IWDG registers */ #define IWDG_KR 0x00 /* Key register */ #define IWDG_PR 0x04 /* Prescaler Register */ @@ -254,6 +256,7 @@ static int stm32_iwdg_probe(struct platform_device *pde= v) wdd->parent =3D dev; wdd->info =3D &stm32_iwdg_info; wdd->ops =3D &stm32_iwdg_ops; + wdd->timeout =3D DEFAULT_TIMEOUT; wdd->min_timeout =3D DIV_ROUND_UP((RLR_MIN + 1) * PR_MIN, wdt->rate); wdd->max_hw_heartbeat_ms =3D ((RLR_MAX + 1) * wdt->data->max_prescaler * 1000) / wdt->rate; --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id AC3F9182755; Sun, 24 Mar 2024 23:49:23 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324163; cv=none; b=cs5ygR6NgPdUtVTF1arBW+giR1gc8hCQcNDO2pE1FpEbjRLNzY09tnEvq/Gb4y8Ik5l22bbcW5N61PJEb10tNIwtRgsvDLFBVhPzESqcrN68UVrJ9BdAokd7J8GzSAjNvbmIaKkiZEBs8fSYoQcHOgCykU3Myvw5mgMXb6MBBNg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324163; c=relaxed/simple; bh=G1pmVYTlKYB2evp2UH26aRIMP5vTOXvwujH5BaIMyP8=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=VhK7Ii0UnkBZqSgZewrceu8/QSMlDZLR9bS3z+FRTwJYTb+dbBJTwlOeHXZP3r7w670h0jqa9/cJMkC9i+1NZQksN/iWt686QxADYklJntI+6Z2OdjbE3WUdQ2AbwSYWf4Jvs36tjH9kcvQOUunonz26xhAWOMVjS7LvNzsAA30= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=tv20Lb52; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="tv20Lb52" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 7D098C43399; Sun, 24 Mar 2024 23:49:22 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324163; bh=G1pmVYTlKYB2evp2UH26aRIMP5vTOXvwujH5BaIMyP8=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=tv20Lb52KjcYxYKwFRd+1g8iEWrVxIPlvBU+iCPNe6S3c27rWpG33AGSzHnWss/4f YbEqKqEcwAI6XZDb0R0q790MdrvKAt7lKRvN3THva9Jy7yDMGr0Q84M9UjJ5Nh9hfJ rv5TpPB+yRrfMpNkKAXYpO4fFYdUIYOcCAPjJuiJAc3QYWvNpOCA4YzAOifz57cpLT O3WX5bfVamRmM+7XnBzfQPReRe5LurTL2YaSKc5BIQcDn9Gfv9zNzp7NND7W5d29mE db/VlTpSejAzLae8cXfW+57BsKDHkJyLi4A1iQE9JlbuYhn5NbxZ9WoyjFYl3/+d3K N4V1AcMUCOLdA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Christophe JAILLET , Benjamin Coddington , Trond Myklebust , Sasha Levin Subject: [PATCH 5.4 158/183] NFS: Fix an off by one in root_nfs_cat() Date: Sun, 24 Mar 2024 19:46:11 -0400 Message-ID: <20240324234638.1355609-159-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Christophe JAILLET [ Upstream commit 698ad1a538da0b6bf969cfee630b4e3a026afb87 ] The intent is to check if 'dest' is truncated or not. So, >=3D should be used instead of >, because strlcat() returns the length of 'dest' and 'src' excluding the trailing NULL. Fixes: 56463e50d1fc ("NFS: Use super.c for NFSROOT mount option parsing") Signed-off-by: Christophe JAILLET Reviewed-by: Benjamin Coddington Signed-off-by: Trond Myklebust Signed-off-by: Sasha Levin --- fs/nfs/nfsroot.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/fs/nfs/nfsroot.c b/fs/nfs/nfsroot.c index effaa4247b912..c0f2e1751c33e 100644 --- a/fs/nfs/nfsroot.c +++ b/fs/nfs/nfsroot.c @@ -169,10 +169,10 @@ static int __init root_nfs_cat(char *dest, const char= *src, size_t len =3D strlen(dest); =20 if (len && dest[len - 1] !=3D ',') - if (strlcat(dest, ",", destlen) > destlen) + if (strlcat(dest, ",", destlen) >=3D destlen) return -1; =20 - if (strlcat(dest, src, destlen) > destlen) + if (strlcat(dest, src, destlen) >=3D destlen) return -1; return 0; } --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id F3DE328ECAE; Sun, 24 Mar 2024 23:49:25 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324167; cv=none; b=rxWEFAG0AazdQlSf9YDdSTG06LDdQNxs6O0XvteHKBunQell+jp8NCtQbL6s9NVJxXsDZJ5N4PkPaeRR7XBH59S7URpS9hbzZjhR8GwTQb7Ijnqut67xymQPw8cXYIImXvgsjPGZF6Yy2RTMzGmQBaesbee2oAOrPJ7ShJbC9Jg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324167; c=relaxed/simple; bh=juqHyoMLptHEf1o3mC3pCq+KguM+yQrH8hvj9AyFJUc=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=Nx8qSCfzHz6DSmrk4wLOBz/3Tgct/IQJ0B+cfH9xJ1vnTlDmxIRnR8g57ED84AkHxk9Issi+6+db9yVEA5ZP1V8hgErbvvMB+edWsDH1Jbu4bwtMy1x+q+nVgeP3XtKLJ4EtmfJVUu9HCTazzdtA4JvYuMkxit7jTeuF3NuM7y0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=lUQd9zwo; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="lUQd9zwo" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 2CFF6C433F1; Sun, 24 Mar 2024 23:49:24 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324165; bh=juqHyoMLptHEf1o3mC3pCq+KguM+yQrH8hvj9AyFJUc=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=lUQd9zwoCIccnMdqcUsEDcrcCjyDgn9Qz5bi4h42OEdA8A2SezXCVT0oCpL0VB3+r hIKMrCDVmZnvloIM0zulf1j8vrfPSHXq5hXz2/OUEIRp0dPWf9K08BAtKIqbQJ+Vsn 64zOcxHOuV3JPSo/JerzLiKQuHEia0ELJItfZarsnfcXv71L60LNfbJZjatYTTkSDh xdJ2y2tgcL0bACua3lyqInUSi0vOFUOixhabBuV9hIz/eKYvoFdqw1OBlqABstvQJL VPZKirF2Mu7qOWhiKQnuvC+yRBlmULFiuckgWNddM5RWP+JAhkS6/Ddi4Ibi3e49s6 Ya6Lrkdtmkdug== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: David Howells , Markus Suvanto , Jeffrey E Altman , Marc Dionne , linux-afs@lists.infradead.org, Christian Brauner , Sasha Levin Subject: [PATCH 5.4 159/183] afs: Revert "afs: Hide silly-rename files from userspace" Date: Sun, 24 Mar 2024 19:46:12 -0400 Message-ID: <20240324234638.1355609-160-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: David Howells [ Upstream commit 0aec3847d044273733285dcff90afda89ad461d2 ] This reverts commit 57e9d49c54528c49b8bffe6d99d782ea051ea534. This undoes the hiding of .__afsXXXX silly-rename files. The problem with hiding them is that rm can't then manually delete them. This also reverts commit 5f7a07646655fb4108da527565dcdc80124b14c4 ("afs: Fix endless loop in directory parsing") as that's a bugfix for the above. Fixes: 57e9d49c5452 ("afs: Hide silly-rename files from userspace") Reported-by: Markus Suvanto Link: https://lists.infradead.org/pipermail/linux-afs/2024-February/008102.= html Signed-off-by: David Howells Link: https://lore.kernel.org/r/3085695.1710328121@warthog.procyon.org.uk Reviewed-by: Jeffrey E Altman cc: Marc Dionne cc: linux-afs@lists.infradead.org Signed-off-by: Christian Brauner Signed-off-by: Sasha Levin --- fs/afs/dir.c | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/fs/afs/dir.c b/fs/afs/dir.c index 1ada9b9cb21ec..43f5b972fcead 100644 --- a/fs/afs/dir.c +++ b/fs/afs/dir.c @@ -421,16 +421,6 @@ static int afs_dir_iterate_block(struct afs_vnode *dvn= ode, continue; } =20 - /* Don't expose silly rename entries to userspace. */ - if (nlen > 6 && - dire->u.name[0] =3D=3D '.' && - ctx->actor !=3D afs_lookup_filldir && - ctx->actor !=3D afs_lookup_one_filldir && - memcmp(dire->u.name, ".__afs", 6) =3D=3D 0) { - ctx->pos =3D blkoff + next * sizeof(union afs_xdr_dirent); - continue; - } - /* found the next entry */ if (!dir_emit(ctx, dire->u.name, nlen, ntohl(dire->u.vnode), --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 5433B28ECAB; Sun, 24 Mar 2024 23:49:27 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324168; cv=none; b=k/Du24tZfCY5sLtmy44XWPNqX1ipfRZ9hUgKepKYbXO6p739F8Q2GVC+a3OfQaeRj/olEMB6VEW58sie92lBx7qlh3x65Ht+lAkZQEpmfOE6nqyGIpYkIx/mT9cBrYrtmfMdJ4iRPSsRXL8KDcpUxMXU7iSEWpghNT8Au6ar/vk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324168; c=relaxed/simple; bh=nKQoc1DwiUrnUcoKk605gJP8MdHJHIWy+wH2tgP474o=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=ZweHXqrP4UddpN1qINsUHm7kzgMxMtKvG9a0FHgcrYDvIcgyGdl/IPvmNwMa+ZXkfTOm8y1c7807eApYpkm5DyXfP/2j2Z35zuZ4EQ9DhYO1mvsf2vDCnqkaQG9nSxjz9R1HSwJCwQFjQ1FNOUuchThuvM5OB1M4iBuuOd5Jr1w= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=pMGQyiCI; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="pMGQyiCI" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 2676CC433C7; Sun, 24 Mar 2024 23:49:26 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324167; bh=nKQoc1DwiUrnUcoKk605gJP8MdHJHIWy+wH2tgP474o=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=pMGQyiCI2r4S+5XK7Rm9TYuDoBdDouZiGd07bQ5CXBFyp4yre5mhxC8Cvkmm3s9Vs SDG0V2/dQuXHNXGLIletfPjvhcWHAAZQAUS9IGIF3YXUTJAGapgikkNMPwJwUu41wh vllCWL7YZAsX7UvFgpB5xllYJE8LgwDzXeesJQGOj0eboBLKpOSqv7v4BYCH6j1YTP V2P4IhwaUe4Pj+grWifkjXCZeskFREkeS+5ERqNpIOaPe+txRg9ggSgHmlhIvsTatl jT7KA6cjAU9YPQ6CPcI1yeqPO+DdTj9piPgeJtzXG6Auv2jqIlait8qJVLnA3v2ENn i2x1RnH6G2qsA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Sean Anderson , stable , Greg Kroah-Hartman , Sasha Levin Subject: [PATCH 5.4 160/183] usb: phy: generic: Get the vbus supply Date: Sun, 24 Mar 2024 19:46:13 -0400 Message-ID: <20240324234638.1355609-161-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Sean Anderson [ Upstream commit 03e607cbb2931374db1825f371e9c7f28526d3f4 ] While support for working with a vbus was added, the regulator was never actually gotten (despite what was documented). Fix this by actually getting the supply from the device tree. Fixes: 7acc9973e3c4 ("usb: phy: generic: add vbus support") Cc: stable Signed-off-by: Sean Anderson Link: https://lore.kernel.org/r/20220425171412.1188485-3-sean.anderson@seco= .com Signed-off-by: Greg Kroah-Hartman Signed-off-by: Sasha Levin --- drivers/usb/phy/phy-generic.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/drivers/usb/phy/phy-generic.c b/drivers/usb/phy/phy-generic.c index a53b89be53248..8a04b157f19f3 100644 --- a/drivers/usb/phy/phy-generic.c +++ b/drivers/usb/phy/phy-generic.c @@ -283,6 +283,13 @@ int usb_phy_gen_create_phy(struct device *dev, struct = usb_phy_generic *nop, return -EPROBE_DEFER; } =20 + nop->vbus_draw =3D devm_regulator_get_exclusive(dev, "vbus"); + if (PTR_ERR(nop->vbus_draw) =3D=3D -ENODEV) + nop->vbus_draw =3D NULL; + if (IS_ERR(nop->vbus_draw)) + return dev_err_probe(dev, PTR_ERR(nop->vbus_draw), + "could not get vbus regulator\n"); + nop->dev =3D dev; nop->phy.dev =3D nop->dev; nop->phy.label =3D "nop-xceiv"; --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9D8A028ECB8; Sun, 24 Mar 2024 23:49:28 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324168; cv=none; b=f2N8ntp+5KygwmvZM/clYMowsMJ1pSv9RDVt8uKmOPdtO6SzSrPpLcW/rmNIjeiVQdqOyDQeFXN1Tf+F4FyDzd03EPjcYL/LT+Nd5UBBs9m/Qn4Qu09KhuNdkBb3bBb5OYSrkKzDZbsYVd0PkO/3QKklL/m34dNOViXGL/w8uoo= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324168; c=relaxed/simple; bh=gMFzpn1jyb7rl/dKq/99t1tj5Qd5u5a6enc5p97cM3E=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=REZrAhil+eK2GKWoQ2EIkdbjQ7f9iNueV4999AbSbny9rfqPsMEogefG5Ff54Qv8QnuI/9IhJhGu+7xdCjXFA8VGdXBhRMDPWmZVRAvzQO7tQ6aeZHFmO+C5KORe7v3l4m+6ICqAy1tC6tNYRBMrDLWtCBzYqlwG2fymBi6uGmQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=JxsCuMxy; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="JxsCuMxy" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 7BE60C433F1; Sun, 24 Mar 2024 23:49:27 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324168; bh=gMFzpn1jyb7rl/dKq/99t1tj5Qd5u5a6enc5p97cM3E=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=JxsCuMxywsjjIl018z6ny5TiM4mx3Jw7s4HXAa0sF5cYUe3TQyLGIFsLiPZdv/3Ut szmOPc9TInVLn2Fl3lzwWFqbvHditzV9at3bxC0PY/eJBWWnj/QiWXiV6XCrntIRvh zUpW59GgvySv3Vw6sQji3pOmQEHBvk9i1CDlO/MfKeHofl8nhHmEqIFvtggeczMK8I i6UKhqvyXJXLi1/p5VemKtfq5iG7m06dwwCehPzHWQ6me/SjJZfPSOgHnQ/TdOcjhC bydN39+a/7dI95HLTjplQyPOOdUn104pns1rYZ0hu0MzIRaS1agQnekqKIJsnubbJo sVmzmovbP14Aw== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: "Jiri Slaby (SUSE)" , Martin Hostettler , Helge Deller , Greg Kroah-Hartman , Sasha Levin Subject: [PATCH 5.4 161/183] tty: vt: fix 20 vs 0x20 typo in EScsiignore Date: Sun, 24 Mar 2024 19:46:14 -0400 Message-ID: <20240324234638.1355609-162-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: "Jiri Slaby (SUSE)" [ Upstream commit 0e6a92f67c8a94707f7bb27ac29e2bdf3e7c167d ] The if (c >=3D 20 && c <=3D 0x3f) test added in commit 7a99565f8732 is wrong. 20 is DC4 in ascii and it makes no sense to consider that as the bottom limit. Instead, it should be 0x20 as in the other test in the commit above. This is supposed to NOT change anything as we handle interesting 20-0x20 asciis far before this if. So for sakeness, change to 0x20 (which is SPACE). Signed-off-by: "Jiri Slaby (SUSE)" Fixes: 7a99565f8732 ("vt: ignore csi sequences with intermediate characters= .") Cc: Martin Hostettler Link: https://lore.kernel.org/all/ZaP45QY2WEsDqoxg@neutronstar.dyndns.org/ Tested-by: Helge Deller # parisc STI console Link: https://lore.kernel.org/r/20240122110401.7289-4-jirislaby@kernel.org Signed-off-by: Greg Kroah-Hartman Signed-off-by: Sasha Levin --- drivers/tty/vt/vt.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/tty/vt/vt.c b/drivers/tty/vt/vt.c index e00ebda492198..171e643cf200e 100644 --- a/drivers/tty/vt/vt.c +++ b/drivers/tty/vt/vt.c @@ -2508,7 +2508,7 @@ static void do_con_trol(struct tty_struct *tty, struc= t vc_data *vc, int c) } return; case EScsiignore: - if (c >=3D 20 && c <=3D 0x3f) + if (c >=3D 0x20 && c <=3D 0x3f) return; vc->vc_state =3D ESnormal; return; --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B734E28ECA5; Sun, 24 Mar 2024 23:49:29 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324169; cv=none; b=sV7WbPP/vJhz7Z96waArRF9FjyOFys5tCnwbBsZ80vLBcT8CkbmT0Dz+aOo3aDufVZzQ74pDC1iZspoz+NePVHbJUrOwZE6lPQg48rYsaiHGcT4WeJDAjXJlWlwU4bxYv43O3HdBr2nWpifX74V4Ug6dooQf7RDEB6lnG1HkEVg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324169; c=relaxed/simple; bh=xjEeStySw6cG5R87KJGT5mOzpahIShC3/rZ9tuhw6uM=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=bQhjGePTFdtJiwAZp9vyTiWFi0Sq5XtF6HEeXwplgamhxxrvvhdn7uq8SzziDSrkDlKtwBib4urY/JbjMXuL8HbZMrft3Ceyl0VCJdW6MRBYMe4/8BSKsS7wJXW6j1TSVHadkC6IlKvXb/BykPVN6PkQcrZyNOxuMn2voXQC2ss= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=QF0xfnIp; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="QF0xfnIp" Received: by smtp.kernel.org (Postfix) with ESMTPSA id C6113C43143; Sun, 24 Mar 2024 23:49:28 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324169; bh=xjEeStySw6cG5R87KJGT5mOzpahIShC3/rZ9tuhw6uM=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=QF0xfnIpqxkiSJdOtWW9EawaJqRzvnIj0sLfhZG2ffQXeiH7gsPA+pRgwB23zWiVG 2UO/AEkZvzrgXXq8zcBwRbJQ+JTvESRasmPWjXXtv0FzLmZh472fcaW7w7AlFaLUCm Ytgv8/GTqbVUeL5hiRNwVvwL3f8ByMAz0Xsj73G4dKqreveUFCTSxtK2Vl4sbYYPWp xvWIj/s0axIa00O0ZtyA2ZwFY+Bz1WCzHYYiCNWDiWdAnkDb9jp7+T9yf67h7kGsML 8JfjOjAkVrUI8w/1xj/W5uMH/0rt69vVYkNsid/rI+yEANGOf+eIIzvJ7MT5Av25MU 6cocPXYGA6AZQ== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Hugo Villeneuve , Andy Shevchenko , Greg Kroah-Hartman , Sasha Levin Subject: [PATCH 5.4 162/183] serial: max310x: fix syntax error in IRQ error message Date: Sun, 24 Mar 2024 19:46:15 -0400 Message-ID: <20240324234638.1355609-163-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Hugo Villeneuve [ Upstream commit 8ede8c6f474255b2213cccd7997b993272a8e2f9 ] Replace g with q. Helpful when grepping thru source code or logs for "request" keyword. Fixes: f65444187a66 ("serial: New serial driver MAX310X") Reviewed-by: Andy Shevchenko Signed-off-by: Hugo Villeneuve Link: https://lore.kernel.org/r/20240118152213.2644269-6-hugo@hugovil.com Signed-off-by: Greg Kroah-Hartman Signed-off-by: Sasha Levin --- drivers/tty/serial/max310x.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/tty/serial/max310x.c b/drivers/tty/serial/max310x.c index 2f88eae8a55a1..5570fd3b84e15 100644 --- a/drivers/tty/serial/max310x.c +++ b/drivers/tty/serial/max310x.c @@ -1460,7 +1460,7 @@ static int max310x_probe(struct device *dev, const st= ruct max310x_devtype *devty if (!ret) return 0; =20 - dev_err(dev, "Unable to reguest IRQ %i\n", irq); + dev_err(dev, "Unable to request IRQ %i\n", irq); =20 out_uart: for (i =3D 0; i < devtype->nr; i++) { --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B908828ECCC; Sun, 24 Mar 2024 23:49:30 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324171; cv=none; b=LUMi7BsFbLoinhZS1ckVZKMc7mmppRu4aXYzHedpKknF8L+n6iWdeE3hJkjhLGl7cSAYYXR2FxxQhgqCHy5i1oUP85SProLvSA/lNRFso3bCMaLt28uQstSM291Ojd2w2rjulBReBzCH8BXfSoJNbHRMwQpMm+RGkbN/x1sLKd4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324171; c=relaxed/simple; bh=6++RCpH2hCFj5OF3LzO27qxjf79fu8qDIIPUQYtLPu8=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=bnNYWb1dzSVS1S5NkFP3ZINfwyIrMUHUZaEnbx6Fez5gNtSkERm+7SOqhJv6UXUuyP63HwQdzgBapZP/b1/oJaUPSg27+rh9vv1pzE6FrhRZsobAwlqUXwRBFA2UrYU6+XiCHxsv4JoD3JZSwrxKi4jbBrvKRjB7zQ2diOBJlLo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=rxdJ04Uv; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="rxdJ04Uv" Received: by smtp.kernel.org (Postfix) with ESMTPSA id DF73BC433F1; Sun, 24 Mar 2024 23:49:29 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324170; bh=6++RCpH2hCFj5OF3LzO27qxjf79fu8qDIIPUQYtLPu8=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=rxdJ04UvI/8GHFUMp4kM2v28LZSlHMM0Be1SZUvaB1GA9SVwYVkbI67xgYcY71hAO hSj1bCM2MlgBHNBv+zHZ4jfJhsGt/urP4PU5LR0rpDF+ZF65zebqT9CDgU2PokSJiL RIh0hVBynb7z9a3UinK6OnUwTia6YjqB4G221hslqDuvlmuMC+b4M8JRkr3JVRXEZ3 up8f43N/sq+Ie6aGw4xYKkIUDwnvEKyXq8WcH40pkFqDXFxLFGevZzaspd2Fxirfyc E/fJwJC4+z9eW9UfARkkezexUplZpLJBo4H2mMspcffA/o/7PmPIOv4TjBfzZn8VqH BaK52XixxRofw== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Tudor Ambarus , Sam Protsenko , Greg Kroah-Hartman , Sasha Levin Subject: [PATCH 5.4 163/183] tty: serial: samsung: fix tx_empty() to return TIOCSER_TEMT Date: Sun, 24 Mar 2024 19:46:16 -0400 Message-ID: <20240324234638.1355609-164-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Tudor Ambarus [ Upstream commit 314c2b399288f0058a8c5b6683292cbde5f1531b ] The core expects for tx_empty() either TIOCSER_TEMT when the tx is empty or 0 otherwise. s3c24xx_serial_txempty_nofifo() might return 0x4, and at least uart_get_lsr_info() tries to clear exactly TIOCSER_TEMT (BIT(1)). Fix tx_empty() to return TIOCSER_TEMT. Fixes: 1da177e4c3f4 ("Linux-2.6.12-rc2") Signed-off-by: Tudor Ambarus Reviewed-by: Sam Protsenko Link: https://lore.kernel.org/r/20240119104526.1221243-2-tudor.ambarus@lina= ro.org Signed-off-by: Greg Kroah-Hartman Signed-off-by: Sasha Levin --- drivers/tty/serial/samsung.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/drivers/tty/serial/samsung.c b/drivers/tty/serial/samsung.c index 24f9bd9101662..78d97dbfc18a8 100644 --- a/drivers/tty/serial/samsung.c +++ b/drivers/tty/serial/samsung.c @@ -800,11 +800,10 @@ static unsigned int s3c24xx_serial_tx_empty(struct ua= rt_port *port) if ((ufstat & info->tx_fifomask) !=3D 0 || (ufstat & info->tx_fifofull)) return 0; - - return 1; + return TIOCSER_TEMT; } =20 - return s3c24xx_serial_txempty_nofifo(port); + return s3c24xx_serial_txempty_nofifo(port) ? TIOCSER_TEMT : 0; } =20 /* no modem control lines */ --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id E400B28ECD6; Sun, 24 Mar 2024 23:49:31 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324173; cv=none; b=KbTenzeg64/eiX+L8UTO5VT28SbaSj5Y3cwoXA9/Hp1VxM6NgfwrhAG81M/Jib/KduSz/6oo8E4i0tWjXzryxs8kMnC/z0ekGAPTJoB6NkU6MabnTIYncxTodHXn1ewMDLZwmeqBZIEcxMS/hBCmPJXV3Dl0HTvSbRAjAqthoWY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324173; c=relaxed/simple; bh=B3AEFgsF6eEwX1vG9pSxc1+bF7vd44baeJOC8d+07Rw=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=k1Xt9bAJ96vAcwCN78WfQ1fzFWIswgb8nQQEDkTEv2kMM3nSLrXWi7MANfD0kqoj8vJ91QFzuiHx1/xZ+zvU5YZybQlcL7lPOdRCktNv7W92lp0b1b6YxbG/j2ZRRhm63OxdrbQV2vPgnh4sMMojPwSUIbxGQBmgDOabWLYNISQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=TAixVkCe; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="TAixVkCe" Received: by smtp.kernel.org (Postfix) with ESMTPSA id E0E5DC43390; Sun, 24 Mar 2024 23:49:30 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324171; bh=B3AEFgsF6eEwX1vG9pSxc1+bF7vd44baeJOC8d+07Rw=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=TAixVkCeQl2VExY3b2hJoLmE8jBYhiKogd6/lE3/fCtVt+ajoP5yLQTpcApMi/uFT X5d4C8y4lOnX19rtx5Z8lqx+U9HDuVNMUK3YmhWb7tjwZGnDLo5ay3LznGR/CTgzXm 4mZ7fa5DozIVj2a3VF9xZyXvCyWLOFf1ab2gchpjsIo2HoBVE2ZpHBvzJWNuYJ/PfZ MVBrYJSzR5Sv6TgOuPQO7+jBROfQBrvfRbb2ghqJVS3FOQ4JJj4YGCE2Yc502ImGvL 0/GhnRn518VO5VnZv1FLxwcVWyhFjjTjUuO3m1zpY2mKUlc/DYrNtyp7uezVQ7klCj jrphjkt2UWLMg== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Masahiro Yamada , Sasha Levin Subject: [PATCH 5.4 164/183] kconfig: fix infinite loop when expanding a macro at the end of file Date: Sun, 24 Mar 2024 19:46:17 -0400 Message-ID: <20240324234638.1355609-165-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Masahiro Yamada [ Upstream commit af8bbce92044dc58e4cc039ab94ee5d470a621f5 ] A macro placed at the end of a file with no newline causes an infinite loop. [Test Kconfig] $(info,hello) \ No newline at end of file I realized that flex-provided input() returns 0 instead of EOF when it reaches the end of a file. Fixes: 104daea149c4 ("kconfig: reference environment variables directly and= remove 'option env=3D'") Signed-off-by: Masahiro Yamada Signed-off-by: Sasha Levin --- scripts/kconfig/lexer.l | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/scripts/kconfig/lexer.l b/scripts/kconfig/lexer.l index 6354c905b006f..3bf90d01c39f9 100644 --- a/scripts/kconfig/lexer.l +++ b/scripts/kconfig/lexer.l @@ -305,8 +305,11 @@ static char *expand_token(const char *in, size_t n) new_string(); append_string(in, n); =20 - /* get the whole line because we do not know the end of token. */ - while ((c =3D input()) !=3D EOF) { + /* + * get the whole line because we do not know the end of token. + * input() returns 0 (not EOF!) when it reachs the end of file. + */ + while ((c =3D input()) !=3D 0) { if (c =3D=3D '\n') { unput(c); break; --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id E795628ECDD; Sun, 24 Mar 2024 23:49:33 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324174; cv=none; b=qlrUG+NxoVXgitvF5sh9LaVvjM71aGtyo9DeL0RpHt81HsP8IsINduMzwqFJREQnUM/mrdqolNxzOdlbt+usGtW8C3x032/V0cHRtnhNTAQ3sG1qULJZsUlAegbxnmVU9O3fUdxJzCthrn9b6dzNyhofwh2lkOu9oTFKGDUwWik= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324174; c=relaxed/simple; bh=B16OLgDJ2vIDMaCBoBbJgafklwHkdpKCJzzjn0IAS6c=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=VLwrjMv3TBne6Tc6M11axuVkkUZY31FAwo/GLCuUA7mZsNLvSXt0ZWzjwTEKFOz2BrhhG6GKWlkCa/nXy6tCFdEYbg5Bnc7fYZISYobZXAbxhtXu+nQKsdPRB4yrURrU3JjnG4Sb7gZIWqAQd4tpg2NC8Jsyz+Ofe+w54VwbEDg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=LTGxOBzM; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="LTGxOBzM" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 14243C433F1; Sun, 24 Mar 2024 23:49:31 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324173; bh=B16OLgDJ2vIDMaCBoBbJgafklwHkdpKCJzzjn0IAS6c=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=LTGxOBzMQH2xTbfCgoS4925pRK7nr+plYw08rDdgxol5GLFzNP4g6F3f1TSqWdCO2 x9ly+e2pv/Yzc5puTC3VhB/Gz9L9MKBovVRE3JLAgVCm9uz+AWKKxtHgEEypXV/vwf R6v9v/ejnQ7m/Nqt2wkHgpfQsU20GxjHSvqe3Yqg0lVX8yGTn/Tzhek+cV94ICDOri iL6XXLU3JG47rA2wxwLo+3ukrbnOrmn/0ZUQt4D1SOa8tfYgHr5IJFZBCb3QrPs8q1 t6/wwrRBwuD9meYUntA8wJ10x8KLFQ2un9PybQHV7LF0fThAPgm128PBoAv0GKLBCB Pu8GahqTyQCHA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Randy Dunlap , Arnd Bergmann , Eddie Huang , Sean Wang , Matthias Brugger , linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, Alessandro Zummo , Alexandre Belloni , linux-rtc@vger.kernel.org, Marc Zyngier , Philipp Zabel , Peter Rosin , AngeloGioacchino Del Regno , Sasha Levin Subject: [PATCH 5.4 165/183] rtc: mt6397: select IRQ_DOMAIN instead of depending on it Date: Sun, 24 Mar 2024 19:46:18 -0400 Message-ID: <20240324234638.1355609-166-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Randy Dunlap [ Upstream commit 544c42f798e1651dcb04fb0395219bf0f1c2607e ] IRQ_DOMAIN is a hidden (not user visible) symbol. Users cannot set it directly thru "make *config", so drivers should select it instead of depending on it if they need it. Relying on it being set for a dependency is risky. Consistently using "select" or "depends on" can also help reduce Kconfig circular dependency issues. Therefore, change the use of "depends on" for IRQ_DOMAIN to "select" for RTC_DRV_MT6397. Fixes: 04d3ba70a3c9 ("rtc: mt6397: add IRQ domain dependency") Cc: Arnd Bergmann Cc: Eddie Huang Cc: Sean Wang Cc: Matthias Brugger Cc: linux-arm-kernel@lists.infradead.org Cc: linux-mediatek@lists.infradead.org Cc: Alessandro Zummo Cc: Alexandre Belloni Cc: linux-rtc@vger.kernel.org Cc: Marc Zyngier Cc: Philipp Zabel Cc: Peter Rosin Reviewed-by: AngeloGioacchino Del Regno Signed-off-by: Randy Dunlap Link: https://lore.kernel.org/r/20240213050258.6167-1-rdunlap@infradead.org Signed-off-by: Alexandre Belloni Signed-off-by: Sasha Levin --- drivers/rtc/Kconfig | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/rtc/Kconfig b/drivers/rtc/Kconfig index 0ad8d84aeb339..22638878c9819 100644 --- a/drivers/rtc/Kconfig +++ b/drivers/rtc/Kconfig @@ -1811,7 +1811,8 @@ config RTC_DRV_MOXART =20 config RTC_DRV_MT6397 tristate "MediaTek PMIC based RTC" - depends on MFD_MT6397 || (COMPILE_TEST && IRQ_DOMAIN) + depends on MFD_MT6397 || COMPILE_TEST + select IRQ_DOMAIN help This selects the MediaTek(R) RTC driver. RTC is part of MediaTek MT6397 PMIC. You should enable MT6397 PMIC MFD before select --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id CD21C18274C; Sun, 24 Mar 2024 23:49:34 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324174; cv=none; b=sOvd43h0acTu58gJn9efhb0E1/1i0Up8O5M2FJoacaAL0DdXFzugWemuHkuwHd8zzA8Y0nG/VKUbxC+lvUKbXUXut0zqqVQlsi1oBA8M7xj7a8t8uM04i1yojd6p5ebmSR9CEyNQIQzmHl7Rm0Y2qGbzwXpbKPTaCYZJfr82rds= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324174; c=relaxed/simple; bh=gTEIx53Lg9NHoGicBRiMsdfaDzGWKuRbLE9XgKQJHp0=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=Rje9ByGxV62PIDlfSlCvhiER2YbacqpxDkwtGdJuld2E19E9V+Fee3O8IcdBSrRGX071D6MWIJ94sRl/eRoZAGRH/BHFM+Li1od/GgODNoCGcac+30yc4n4Lnbiu6zHaQ6ZYdsY35akMRR6e2+Ua0sIECcthNx9EYEvMXKDtq4Q= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=X3yV1K59; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="X3yV1K59" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 1A1E2C43399; Sun, 24 Mar 2024 23:49:34 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324174; bh=gTEIx53Lg9NHoGicBRiMsdfaDzGWKuRbLE9XgKQJHp0=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=X3yV1K59zCf1/KJROa8baMmD0Zz14f65oShiykRjA0Or+fed2x8VZP2tnyyrTojxa vv123Fz8G/JzLwSDeV1kicC7dBcez2a6wwPFIOsx1z0qOObPNnSmjyRUxqOaXlUOgE zqmtx63ypeSF4/wWGo6fi2btMgHqIpOB7vnOXQTnjEG/+2JEOHQC8ps5nkQwTOqA7N akL5RWXFuZi9E1g2iW9d+1vRK+tvwaMApzziEeb/8U8LH0pb2m921Xsatc1cJD9IkY G2kLxWI+HosAnFsZQ2WNlpSEHhUIhRJakRcFVeva/cXX+vIJJPg8fvReUk+dqWv1HZ KALPFCA/rhOhw== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Andy Shevchenko , Greg Kroah-Hartman , Sasha Levin Subject: [PATCH 5.4 166/183] serial: 8250_exar: Don't remove GPIO device on suspend Date: Sun, 24 Mar 2024 19:46:19 -0400 Message-ID: <20240324234638.1355609-167-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Andy Shevchenko [ Upstream commit 73b5a5c00be39e23b194bad10e1ea8bb73eee176 ] It seems a copy&paste mistake that suspend callback removes the GPIO device. There is no counterpart of this action, means once suspended there is no more GPIO device available untile full unbind-bind cycle is performed. Remove suspicious GPIO device removal in suspend. Fixes: d0aeaa83f0b0 ("serial: exar: split out the exar code from 8250_pci") Signed-off-by: Andy Shevchenko Link: https://lore.kernel.org/r/20240219150627.2101198-2-andriy.shevchenko@= linux.intel.com Signed-off-by: Greg Kroah-Hartman Signed-off-by: Sasha Levin --- drivers/tty/serial/8250/8250_exar.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/drivers/tty/serial/8250/8250_exar.c b/drivers/tty/serial/8250/= 8250_exar.c index 93367dea4d8a5..0dfe9ceb032a5 100644 --- a/drivers/tty/serial/8250/8250_exar.c +++ b/drivers/tty/serial/8250/8250_exar.c @@ -639,6 +639,7 @@ static void exar_pci_remove(struct pci_dev *pcidev) for (i =3D 0; i < priv->nr; i++) serial8250_unregister_port(priv->line[i]); =20 + /* Ensure that every init quirk is properly torn down */ if (priv->board->exit) priv->board->exit(pcidev); } @@ -653,10 +654,6 @@ static int __maybe_unused exar_suspend(struct device *= dev) if (priv->line[i] >=3D 0) serial8250_suspend_port(priv->line[i]); =20 - /* Ensure that every init quirk is properly torn down */ - if (priv->board->exit) - priv->board->exit(pcidev); - return 0; } =20 --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id E8B25182762; Sun, 24 Mar 2024 23:49:35 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324176; cv=none; b=NpyCjg4AdAosplh2aa7ZQ2TM6d5w/q+daIBlveIDvk7q+DvDsMS+vvrERW6MUmUn0RPBpjNkvnWP4dPuBR9PkKTNHe6L6UZQj0/bpwEAmW+/ZqpoAQVZNNUSvbuejbR0xDFfoT42Pdzch5Uj/Bd7DtspW3Idx1wGfiDi6uKXJ/Q= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324176; c=relaxed/simple; bh=FTe4ZX7VYZ8SrJmSCLv4eDtXVTPqOYrMW0q9tjbwYoA=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=jNyuyR5UasOpZr4EBvwve5/61s+1Gm3tIICixI22zeuJfzc9lcwqj5zNPcsxneLTK/2/itXE1Vt9m3NFQCvRLuS4NzihQr/aw9hnX6+4YTdmZwCBppAh3FaCUWOXj48XpmhrOc6mgbeHBLLHCxEmj2UavTZixAXhCCxSEdjzmNs= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=e/AogOVR; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="e/AogOVR" Received: by smtp.kernel.org (Postfix) with ESMTPSA id F2812C433F1; Sun, 24 Mar 2024 23:49:34 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324175; bh=FTe4ZX7VYZ8SrJmSCLv4eDtXVTPqOYrMW0q9tjbwYoA=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=e/AogOVRSJPd1BDd1UsjVJVpMIezI/vO7dgw4jB3vJ71VjGYrL59OyDMFufu3uWaH T8a+J0YkW9OVxEDae/UIK9QGbN4Zbi3a3YSfYJuPeNxQnMMhK7ogfo0QE3HA4lwA+P Ks1nO5eyWAF/MoSpRAFU2Xo14SncTkh6xAGhESb3QpIy6C4sc0dn4PUQv53sDF+9fn am420JZ7klX+3/6Pcn/BhKAEAMezntcKqEYVPXiQ1xh/a1tt8GGfRLAsDZs7rMIi8D O3eUR3o/mZBG+ARisZXrEKChN90d/fvJpkR6/Q5eifotzTqwZEnwcUcKx8tMs9+Yjk P7l/RKLPlseAA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Dan Carpenter , Rui Miguel Silva , Alex Elder , Greg Kroah-Hartman , Sasha Levin Subject: [PATCH 5.4 167/183] staging: greybus: fix get_channel_from_mode() failure path Date: Sun, 24 Mar 2024 19:46:20 -0400 Message-ID: <20240324234638.1355609-168-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Dan Carpenter [ Upstream commit 34164202a5827f60a203ca9acaf2d9f7d432aac8 ] The get_channel_from_mode() function is supposed to return the channel which matches the mode. But it has a bug where if it doesn't find a matching channel then it returns the last channel. It should return NULL instead. Also remove an unnecessary NULL check on "channel". Fixes: 2870b52bae4c ("greybus: lights: add lights implementation") Signed-off-by: Dan Carpenter Reviewed-by: Rui Miguel Silva Reviewed-by: Alex Elder Link: https://lore.kernel.org/r/379c0cb4-39e0-4293-8a18-c7b1298e5420@moroto= .mountain Signed-off-by: Greg Kroah-Hartman Signed-off-by: Sasha Levin --- drivers/staging/greybus/light.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/staging/greybus/light.c b/drivers/staging/greybus/ligh= t.c index d2672b65c3f49..e59bb27236b9f 100644 --- a/drivers/staging/greybus/light.c +++ b/drivers/staging/greybus/light.c @@ -100,15 +100,15 @@ static struct led_classdev *get_channel_cdev(struct g= b_channel *channel) static struct gb_channel *get_channel_from_mode(struct gb_light *light, u32 mode) { - struct gb_channel *channel =3D NULL; + struct gb_channel *channel; int i; =20 for (i =3D 0; i < light->channels_count; i++) { channel =3D &light->channels[i]; - if (channel && channel->mode =3D=3D mode) - break; + if (channel->mode =3D=3D mode) + return channel; } - return channel; + return NULL; } =20 static int __gb_lights_flash_intensity_set(struct gb_channel *channel, --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 4B2D1182772; Sun, 24 Mar 2024 23:49:37 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324178; cv=none; b=SztWidjjufsEP28zRVg+CG+Ptg2/MI87+FZj9ybeA8OIAvNqvinj7R/XzlFXla7ITGk26kaVRWWrML0WNJDMEhoYgk7yZDI5Lfm2rhCk6mxg7gxPMpLUS4McnJIaJQTMjgAhApLh91VhZwkMhqbS5OmHmtnVH/TrrkwIjuHzk6A= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324178; c=relaxed/simple; bh=YFZ4xQvZwH2uwtXH7Bh/YBo8b1VqapGkrqaijssyQoY=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=nRgJaEw7NlVs+C/e1Bk6PQUAWOWDVLsKnZx9RSz1S1gVFg7zDyVBC5kjWKgohOlGihERY/r7/ZCWQBM9/HNqcht09bJMBtjOQ7reKXkoE5WfgLAuHfe34Bqyom1OP6L74WEfM7/eoqZbYgYBhCAoXpTVAhudLZjtRcC7ETPq6LA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=mNBwz7qU; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="mNBwz7qU" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 1ABCAC43394; Sun, 24 Mar 2024 23:49:36 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324177; bh=YFZ4xQvZwH2uwtXH7Bh/YBo8b1VqapGkrqaijssyQoY=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=mNBwz7qUgcgNRSPxZiQ4VBylL1pO5p3UPTzW+ErVf1qBVcQouCrDBv4KkjULEvUmH dh7f8DVrgTxL6aPWEwuqOxxlJniYj2Afj5vrE80aHbuffT0SDBK5dSbyn9Lv46M83x jzNrAzR8zMPo8kRbKmZHAFbaEFzzEMbWiHnUYu6em57M9uwXHj+NMQ6HvIO4FipP+z vi4L4NjGrBjheXQh6ofjMUlpSSCy3dpic2s92h/r4kr9rzvehF4oSsiwW9WxhQyiI0 +COtj4cbgYcfSUwizRt1teBnY1uLRoy09nlxVoLzvb0DH2jCDFjLA72hV9MDeCLyJQ h65qkRc2FKRiw== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Colin Ian King , Alan Stern , Greg Kroah-Hartman , Sasha Levin Subject: [PATCH 5.4 168/183] usb: gadget: net2272: Use irqflags in the call to net2272_probe_fin Date: Sun, 24 Mar 2024 19:46:21 -0400 Message-ID: <20240324234638.1355609-169-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable From: Colin Ian King [ Upstream commit 600556809f04eb3bbccd05218215dcd7b285a9a9 ] Currently the variable irqflags is being set but is not being used, it appears it should be used in the call to net2272_probe_fin rather than IRQF_TRIGGER_LOW being used. Kudos to Uwe Kleine-K=C3=B6nig for suggesting the fix. Cleans up clang scan build warning: drivers/usb/gadget/udc/net2272.c:2610:15: warning: variable 'irqflags' set but not used [-Wunused-but-set-variable] Fixes: ceb80363b2ec ("USB: net2272: driver for PLX NET2272 USB device contr= oller") Signed-off-by: Colin Ian King Acked-by: Alan Stern Link: https://lore.kernel.org/r/20240307181734.2034407-1-colin.i.king@gmail= .com Signed-off-by: Greg Kroah-Hartman Signed-off-by: Sasha Levin --- drivers/usb/gadget/udc/net2272.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/usb/gadget/udc/net2272.c b/drivers/usb/gadget/udc/net2= 272.c index 5980540a8fff2..de7757260d6cc 100644 --- a/drivers/usb/gadget/udc/net2272.c +++ b/drivers/usb/gadget/udc/net2272.c @@ -2632,7 +2632,7 @@ net2272_plat_probe(struct platform_device *pdev) goto err_req; } =20 - ret =3D net2272_probe_fin(dev, IRQF_TRIGGER_LOW); + ret =3D net2272_probe_fin(dev, irqflags); if (ret) goto err_io; =20 --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id BB062182776; Sun, 24 Mar 2024 23:49:38 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324178; cv=none; b=UQIIDQgYulDixqh8S8BKTep5Q+2r2Nys7zpguVRMk46c/kzPEsfOHvKIgmcwgFxnbYmD4dQxQdRTA8g7LUdAyl7Qgsv630eeAG8qDx7c0KnBOoUbw7DhmVwceOcXrhpuAGpqb0yUn6He2tZ8dqLS4nT0lpCw49iNB82LG2HQNTM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324178; c=relaxed/simple; bh=r9UnBII3REuWbDqt5aQZvD52Fpe3UUiC0qCfsBdVK8c=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=Z1Px0flztlRwhP5SUnluVyJ7CIDAIywePrcyH63Ak+r9+8R5cPGrJ1vvMYVRXmOPaIy2N7ueJXEmVa0mQficAiFX6IlLPP7DL/bAXz8U6q6i/LsZ/afqsQ0KerLoNS85q8HhZNl4h6bmaNtiXS9BUuZRUWigN2i3ZqOkWaCINbA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=YJzBUoCD; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="YJzBUoCD" Received: by smtp.kernel.org (Postfix) with ESMTPSA id C200BC433F1; Sun, 24 Mar 2024 23:49:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324178; bh=r9UnBII3REuWbDqt5aQZvD52Fpe3UUiC0qCfsBdVK8c=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=YJzBUoCDdlVI8H/ZukPzAqQv9S/HS+LmJqIexU1WH+5SpFDGrN/EcA4fXqi/xKtQL bZom1pweFrHMXPa4XRGivkFRj4Bi/jgCw6O6nZ9aUjplV7CMA14hmobrdX0C+f8SAF qOcu7nDPGgSiQwQq2ftpEFR7ieRJ5vFtAi+HJm58sRlrqxyARtZ7+0u9MXT3W2TLGN ILWgV978hDsnDxxikg9H0FAxh24T5CQksk1ZHEs+moW0D/OBg1jSzT3h1mzC8MtdxZ fAs3TBa5851265/SrN2EO3/rBLn+DWojz9usqecAdFPu+Gll6cPnZx5eHywsWIaMhV UCl4wTpd7gvyA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Linu Cherian , Sunil Goutham , Subbaraya Sundeep , "David S . Miller" , Sasha Levin Subject: [PATCH 5.4 169/183] octeontx2-af: Use matching wake_up API variant in CGX command interface Date: Sun, 24 Mar 2024 19:46:22 -0400 Message-ID: <20240324234638.1355609-170-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Linu Cherian [ Upstream commit e642921dfeed1e15e73f78f2c3b6746f72b6deb2 ] Use wake_up API instead of wake_up_interruptible, since wait_event_timeout API is used for waiting on command completion. Fixes: 1463f382f58d ("octeontx2-af: Add support for CGX link management") Signed-off-by: Linu Cherian Signed-off-by: Sunil Goutham Signed-off-by: Subbaraya Sundeep Signed-off-by: David S. Miller Signed-off-by: Sasha Levin --- drivers/net/ethernet/marvell/octeontx2/af/cgx.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/ethernet/marvell/octeontx2/af/cgx.c b/drivers/net/= ethernet/marvell/octeontx2/af/cgx.c index 54e9f6dc24ea0..910ed148e827e 100644 --- a/drivers/net/ethernet/marvell/octeontx2/af/cgx.c +++ b/drivers/net/ethernet/marvell/octeontx2/af/cgx.c @@ -582,7 +582,7 @@ static irqreturn_t cgx_fwi_event_handler(int irq, void = *data) =20 /* Release thread waiting for completion */ lmac->cmd_pend =3D false; - wake_up_interruptible(&lmac->wq_cmd_cmplt); + wake_up(&lmac->wq_cmd_cmplt); break; case CGX_EVT_ASYNC: if (cgx_event_is_linkevent(event)) --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C8DD2182EE6; Sun, 24 Mar 2024 23:49:39 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324180; cv=none; b=jo6A4Gnc9Yb5nO2nwZA1oT0ZEg5lst4vBVEFbL536jyapGVsYadHlp3vPOZyn268BbOHSwlRTyk7/YbvieA0IbgOVvTl4VN4VZHUBlWY40ZHnvFaKwoWeSiZ1Rt6Wne4sQZ9BXuWWRzNOg26l/bP5jNf7LJzk975unmY/Ti3Sgk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324180; c=relaxed/simple; bh=H9+Z6tw0a54j3G9lSJGWtJ0NwwhnT4Y44Yjt7W6ADWY=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=D5MnaidaIB3RrOCzu0lTbxnAy7iElC/cscVI3tAcJRgddR7m61+hHyFh2eBA5uzCaqdPRC4MrWuh2e0/Kb8hTS9qiycBRjJfU+nzBqIN8/2H+81RGcApaqeQkEHjWo5huTYE+tkEdGP14v5ABsrOXyx2O1ohczi2CdCZhBMV1fM= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=VMQcgUF1; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="VMQcgUF1" Received: by smtp.kernel.org (Postfix) with ESMTPSA id E2289C433A6; Sun, 24 Mar 2024 23:49:38 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324179; bh=H9+Z6tw0a54j3G9lSJGWtJ0NwwhnT4Y44Yjt7W6ADWY=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=VMQcgUF13J6Ld3XiCrZcGwuWeC7ie8YqAl/beuHRfeYrmE0E2vPpMRYDY9pMkx8p3 HtaqKpuk2P9VCuBFGP4hTCRSazhQE2dDQMdJr1tWv4JE2kfiNeligBZP5712/u/XU4 F8MBpSuKS+jRsg/ynKZeIo2kUbVhuxR1rU+KcAIinD1m5NCZBtOq2unSyQKuSwMeVY zXEwOFCxfNHwXpH3yIm98O6YtiwM7WswrP9QW5Ufv9bIaw0682z6liQ7MPUMohs57G JgqRB/YcwihmA18+sXMGaNJ+Dr5TvDPNoz/5NDmwn/QgZm5Bn8oYcS3JTtkFYqTDb6 7ZUHUBsS40stA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Mete Durlu , Heiko Carstens , Christian Borntraeger , Sasha Levin Subject: [PATCH 5.4 170/183] s390/vtime: fix average steal time calculation Date: Sun, 24 Mar 2024 19:46:23 -0400 Message-ID: <20240324234638.1355609-171-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Mete Durlu [ Upstream commit 367c50f78451d3bd7ad70bc5c89f9ba6dec46ca9 ] Current average steal timer calculation produces volatile and inflated values. The only user of this value is KVM so far and it uses that to decide whether or not to yield the vCPU which is seeing steal time. KVM compares average steal timer to a threshold and if the threshold is past then it does not allow CPU polling and yields it to host, else it keeps the CPU by polling. Since KVM's steal time threshold is very low by default (%10) it most likely is not effected much by the bloated average steal timer values because the operating region is pretty small. However there might be new users in the future who might rely on this number. Fix average steal timer calculation by changing the formula from: avg_steal_timer =3D avg_steal_timer / 2 + steal_timer; to the following: avg_steal_timer =3D (avg_steal_timer + steal_timer) / 2; This ensures that avg_steal_timer is actually a naive average of steal timer values. It now closely follows steal timer values but of course in a smoother manner. Fixes: 152e9b8676c6 ("s390/vtime: steal time exponential moving average") Signed-off-by: Mete Durlu Acked-by: Heiko Carstens Acked-by: Christian Borntraeger Signed-off-by: Heiko Carstens Signed-off-by: Sasha Levin --- arch/s390/kernel/vtime.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/arch/s390/kernel/vtime.c b/arch/s390/kernel/vtime.c index 6e60cc2443b2e..2c99de1cc92cb 100644 --- a/arch/s390/kernel/vtime.c +++ b/arch/s390/kernel/vtime.c @@ -214,13 +214,13 @@ void vtime_flush(struct task_struct *tsk) virt_timer_expire(); =20 steal =3D S390_lowcore.steal_timer; - avg_steal =3D S390_lowcore.avg_steal_timer / 2; + avg_steal =3D S390_lowcore.avg_steal_timer; if ((s64) steal > 0) { S390_lowcore.steal_timer =3D 0; account_steal_time(cputime_to_nsecs(steal)); avg_steal +=3D steal; } - S390_lowcore.avg_steal_timer =3D avg_steal; + S390_lowcore.avg_steal_timer =3D avg_steal / 2; } =20 /* --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id DC3BF182EE7; Sun, 24 Mar 2024 23:49:40 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324181; cv=none; b=cf/mx3LJeV4CQY4IiVfZldcGLrDadQY9qOjfxzialoaB0jDYXisiUMcEH6Ttrms3XEFHQBkwFW5eoURGCimKftaf3nfuU/0d1QvsJEJ66yYk7yXMo+zWsu6QT/WTdFoSOVcCD1mGnIVg/tkhx6Ufxw7qyvIkmse5vUPK//4QggU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324181; c=relaxed/simple; bh=taxTduM28CK35ghnKSNpQ9TLzhLL9kvY8eOFM4v3AjQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=a4y6Q4R5AI+ZWm5jrdo8J7sPAMpyUrnZ7PiQtukVHm9t32SIJGLXXrcDY5d+6/KU/nLdtNiSdI0Z6sgnq41HZdMRN6e7Y2k7/GqlYweWHKwncZdbQ/XxJVjnl1LAez/zqYBfQ+w17gCi+bu1gMMHwGA1wRyXT9RBDM4rwPmSP3I= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=p+nAFzHp; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="p+nAFzHp" Received: by smtp.kernel.org (Postfix) with ESMTPSA id EACF6C43390; Sun, 24 Mar 2024 23:49:39 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324180; bh=taxTduM28CK35ghnKSNpQ9TLzhLL9kvY8eOFM4v3AjQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=p+nAFzHpAGPZ3KIzNf/7lMgtvnU0ki5C5XvLIVLXFbDKo6iAsvjzqU69OiEdsW/3F 1ARrfsE53ZkiYrr1bHJJgDuM0GUiffxi+dLBHBBiuAXmLP+eXzRCE3fS7CzIkqQ2Fp LK7cxn6plFNwEhK/822MlmEZ4Yj5MdiTMtmnzDtK4dTb6Bc2HYU7K0tDLg2XS5sHDx gjczZI+GRXX7Ue1UtssG782UVyunPyZ7T/qVE8uxChAKo7oYzwgJvIOAUIciS1uS2W T7Ic1glsV/uiERJabDFFZ6TGY1elmxOCyyPCygDHUkkwgTdODM5DbyEOqlP9zshghU eBVb+/PcsXOmw== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Shigeru Yoshida , syzbot+2ef3a8ce8e91b5a50098@syzkaller.appspotmail.com, Paolo Abeni , Sasha Levin Subject: [PATCH 5.4 171/183] hsr: Fix uninit-value access in hsr_get_node() Date: Sun, 24 Mar 2024 19:46:24 -0400 Message-ID: <20240324234638.1355609-172-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Shigeru Yoshida [ Upstream commit ddbec99f58571301679addbc022256970ca3eac6 ] KMSAN reported the following uninit-value access issue [1]: =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D BUG: KMSAN: uninit-value in hsr_get_node+0xa2e/0xa40 net/hsr/hsr_framereg.c= :246 hsr_get_node+0xa2e/0xa40 net/hsr/hsr_framereg.c:246 fill_frame_info net/hsr/hsr_forward.c:577 [inline] hsr_forward_skb+0xe12/0x30e0 net/hsr/hsr_forward.c:615 hsr_dev_xmit+0x1a1/0x270 net/hsr/hsr_device.c:223 __netdev_start_xmit include/linux/netdevice.h:4940 [inline] netdev_start_xmit include/linux/netdevice.h:4954 [inline] xmit_one net/core/dev.c:3548 [inline] dev_hard_start_xmit+0x247/0xa10 net/core/dev.c:3564 __dev_queue_xmit+0x33b8/0x5130 net/core/dev.c:4349 dev_queue_xmit include/linux/netdevice.h:3134 [inline] packet_xmit+0x9c/0x6b0 net/packet/af_packet.c:276 packet_snd net/packet/af_packet.c:3087 [inline] packet_sendmsg+0x8b1d/0x9f30 net/packet/af_packet.c:3119 sock_sendmsg_nosec net/socket.c:730 [inline] __sock_sendmsg net/socket.c:745 [inline] __sys_sendto+0x735/0xa10 net/socket.c:2191 __do_sys_sendto net/socket.c:2203 [inline] __se_sys_sendto net/socket.c:2199 [inline] __x64_sys_sendto+0x125/0x1c0 net/socket.c:2199 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0x6d/0x140 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x63/0x6b Uninit was created at: slab_post_alloc_hook+0x129/0xa70 mm/slab.h:768 slab_alloc_node mm/slub.c:3478 [inline] kmem_cache_alloc_node+0x5e9/0xb10 mm/slub.c:3523 kmalloc_reserve+0x13d/0x4a0 net/core/skbuff.c:560 __alloc_skb+0x318/0x740 net/core/skbuff.c:651 alloc_skb include/linux/skbuff.h:1286 [inline] alloc_skb_with_frags+0xc8/0xbd0 net/core/skbuff.c:6334 sock_alloc_send_pskb+0xa80/0xbf0 net/core/sock.c:2787 packet_alloc_skb net/packet/af_packet.c:2936 [inline] packet_snd net/packet/af_packet.c:3030 [inline] packet_sendmsg+0x70e8/0x9f30 net/packet/af_packet.c:3119 sock_sendmsg_nosec net/socket.c:730 [inline] __sock_sendmsg net/socket.c:745 [inline] __sys_sendto+0x735/0xa10 net/socket.c:2191 __do_sys_sendto net/socket.c:2203 [inline] __se_sys_sendto net/socket.c:2199 [inline] __x64_sys_sendto+0x125/0x1c0 net/socket.c:2199 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0x6d/0x140 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x63/0x6b CPU: 1 PID: 5033 Comm: syz-executor334 Not tainted 6.7.0-syzkaller-00562-g9= f8413c4a66f #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Goo= gle 11/17/2023 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D If the packet type ID field in the Ethernet header is either ETH_P_PRP or ETH_P_HSR, but it is not followed by an HSR tag, hsr_get_skb_sequence_nr() reads an invalid value as a sequence number. This causes the above issue. This patch fixes the issue by returning NULL if the Ethernet header is not followed by an HSR tag. Fixes: f266a683a480 ("net/hsr: Better frame dispatch") Reported-and-tested-by: syzbot+2ef3a8ce8e91b5a50098@syzkaller.appspotmail.c= om Closes: https://syzkaller.appspot.com/bug?extid=3D2ef3a8ce8e91b5a50098 [1] Signed-off-by: Shigeru Yoshida Link: https://lore.kernel.org/r/20240312152719.724530-1-syoshida@redhat.com Signed-off-by: Paolo Abeni Signed-off-by: Sasha Levin --- net/hsr/hsr_framereg.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/net/hsr/hsr_framereg.c b/net/hsr/hsr_framereg.c index 783e741491ec3..1a0f447113f24 100644 --- a/net/hsr/hsr_framereg.c +++ b/net/hsr/hsr_framereg.c @@ -198,6 +198,10 @@ struct hsr_node *hsr_get_node(struct hsr_port *port, s= truct sk_buff *skb, =20 if (ethhdr->h_proto =3D=3D htons(ETH_P_PRP) || ethhdr->h_proto =3D=3D htons(ETH_P_HSR)) { + /* Check if skb contains hsr_ethhdr */ + if (skb->mac_len < sizeof(struct hsr_ethhdr)) + return NULL; + /* Use the existing sequence_nr from the tag as starting point * for filtering duplicate frames. */ --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 43F52182EF0; Sun, 24 Mar 2024 23:49:42 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324182; cv=none; b=SyL1zDlnl9NSj4JMWkkWT4eu2RgsXAy9l4TRGMwZHnnWwXZTjifsrsDn1Xt6IepKKBipv7KhzF341ohhGL9uC5S9iaMLJREaI312akP5fAgcA30KusRvpSVbHV5iC7WD/Ii53Bixp0Pf3TZy9NPK+OG0an9pdEM9K9QMiponRjw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324182; c=relaxed/simple; bh=qmj2KgxguVqrS/xpYluBOAnYcsDcleF5kcZvmiK2JG0=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=lYXeSQH8uNz6T4dHYvS9g6GNFqAWs9b5Fa2Ap6cF8yaBFtinLkaMkFpZXDJdI2IDuAHHvu7C9N46fE1mGY9fb27rc7lBpR9F/KJEycvdfTLo/twLh9wbuRVqIfYx53COBGCoxzJAmCWdz3P+ws1bOPDyNNIsCxgdQ2/YyusjoT8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=ORXU6Lzt; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="ORXU6Lzt" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 11345C433F1; Sun, 24 Mar 2024 23:49:40 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324182; bh=qmj2KgxguVqrS/xpYluBOAnYcsDcleF5kcZvmiK2JG0=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=ORXU6Lzt4+fwhX4UngL7272vhCFo2fFXbK5BrSxJUKmZ9GQLg4RwiSSHSS9P9AnyM UYvSWU1YoVFENXMjv1yDb72BrbXY8Rkz3b1c0vcXjhByCBvQni3zyv0+o9xcJ5+zjC /ifpiIABq6MFGSCUUqOQsIKf14s9xqd3uiiiosd3MbuCVG4SxYsxqpo8zk0oInpTTv 1SgoiiVwosgTYO14vz8Zykbf+uAFssyQzgp2NOMGYZK5g4/a78feWd/UN5AeTXJpJ1 WZuE6ghMltSWmjsnT6jNdlhDj+0HNgjRqahys0Ee8F1LVeazMg202lYa4oWypRaKXr JrS+AxC8jqghQ== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Eric Dumazet , syzbot+c669c1136495a2e7c31f@syzkaller.appspotmail.com, Willem de Bruijn , Willem de Bruijn , Jason Xing , "David S . Miller" , Sasha Levin Subject: [PATCH 5.4 172/183] packet: annotate data-races around ignore_outgoing Date: Sun, 24 Mar 2024 19:46:25 -0400 Message-ID: <20240324234638.1355609-173-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Eric Dumazet [ Upstream commit 6ebfad33161afacb3e1e59ed1c2feefef70f9f97 ] ignore_outgoing is read locklessly from dev_queue_xmit_nit() and packet_getsockopt() Add appropriate READ_ONCE()/WRITE_ONCE() annotations. syzbot reported: BUG: KCSAN: data-race in dev_queue_xmit_nit / packet_setsockopt write to 0xffff888107804542 of 1 bytes by task 22618 on cpu 0: packet_setsockopt+0xd83/0xfd0 net/packet/af_packet.c:4003 do_sock_setsockopt net/socket.c:2311 [inline] __sys_setsockopt+0x1d8/0x250 net/socket.c:2334 __do_sys_setsockopt net/socket.c:2343 [inline] __se_sys_setsockopt net/socket.c:2340 [inline] __x64_sys_setsockopt+0x66/0x80 net/socket.c:2340 do_syscall_64+0xd3/0x1d0 entry_SYSCALL_64_after_hwframe+0x6d/0x75 read to 0xffff888107804542 of 1 bytes by task 27 on cpu 1: dev_queue_xmit_nit+0x82/0x620 net/core/dev.c:2248 xmit_one net/core/dev.c:3527 [inline] dev_hard_start_xmit+0xcc/0x3f0 net/core/dev.c:3547 __dev_queue_xmit+0xf24/0x1dd0 net/core/dev.c:4335 dev_queue_xmit include/linux/netdevice.h:3091 [inline] batadv_send_skb_packet+0x264/0x300 net/batman-adv/send.c:108 batadv_send_broadcast_skb+0x24/0x30 net/batman-adv/send.c:127 batadv_iv_ogm_send_to_if net/batman-adv/bat_iv_ogm.c:392 [inline] batadv_iv_ogm_emit net/batman-adv/bat_iv_ogm.c:420 [inline] batadv_iv_send_outstanding_bat_ogm_packet+0x3f0/0x4b0 net/batman-adv/bat_i= v_ogm.c:1700 process_one_work kernel/workqueue.c:3254 [inline] process_scheduled_works+0x465/0x990 kernel/workqueue.c:3335 worker_thread+0x526/0x730 kernel/workqueue.c:3416 kthread+0x1d1/0x210 kernel/kthread.c:388 ret_from_fork+0x4b/0x60 arch/x86/kernel/process.c:147 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:243 value changed: 0x00 -> 0x01 Reported by Kernel Concurrency Sanitizer on: CPU: 1 PID: 27 Comm: kworker/u8:1 Tainted: G W 6.8.0-syzkal= ler-08073-g480e035fc4c7 #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Goo= gle 02/29/2024 Workqueue: bat_events batadv_iv_send_outstanding_bat_ogm_packet Fixes: fa788d986a3a ("packet: add sockopt to ignore outgoing packets") Reported-by: syzbot+c669c1136495a2e7c31f@syzkaller.appspotmail.com Closes: https://lore.kernel.org/netdev/CANn89i+Z7MfbkBLOv=3Dp7KZ7=3DK1rKHO4= P1OL5LYDCtBiyqsa9oQ@mail.gmail.com/T/#t Signed-off-by: Eric Dumazet Cc: Willem de Bruijn Reviewed-by: Willem de Bruijn Reviewed-by: Jason Xing Signed-off-by: David S. Miller Signed-off-by: Sasha Levin --- net/core/dev.c | 2 +- net/packet/af_packet.c | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/net/core/dev.c b/net/core/dev.c index 5e043e6f09476..4f39d97209811 100644 --- a/net/core/dev.c +++ b/net/core/dev.c @@ -1940,7 +1940,7 @@ void dev_queue_xmit_nit(struct sk_buff *skb, struct n= et_device *dev) rcu_read_lock(); again: list_for_each_entry_rcu(ptype, ptype_list, list) { - if (ptype->ignore_outgoing) + if (READ_ONCE(ptype->ignore_outgoing)) continue; =20 /* Never send packets back to the socket diff --git a/net/packet/af_packet.c b/net/packet/af_packet.c index 451f9c43b34b8..9fc020fd7ecc1 100644 --- a/net/packet/af_packet.c +++ b/net/packet/af_packet.c @@ -3921,7 +3921,7 @@ packet_setsockopt(struct socket *sock, int level, int= optname, char __user *optv if (val < 0 || val > 1) return -EINVAL; =20 - po->prot_hook.ignore_outgoing =3D !!val; + WRITE_ONCE(po->prot_hook.ignore_outgoing, !!val); return 0; } case PACKET_TX_HAS_OFF: @@ -4053,7 +4053,7 @@ static int packet_getsockopt(struct socket *sock, int= level, int optname, 0); break; case PACKET_IGNORE_OUTGOING: - val =3D po->prot_hook.ignore_outgoing; + val =3D READ_ONCE(po->prot_hook.ignore_outgoing); break; case PACKET_ROLLOVER_STATS: if (!po->rollover) --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9D714182EFF; Sun, 24 Mar 2024 23:49:43 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324184; cv=none; b=Yfb4wS0aX3A2tocqCCp2h/ijZdG1O4AZuyhOLYFXa2moA8DPMB4/HaYwbhQgrOOBSGcOlhhMZ6ToEMAD2aW6lq7exaxCvZ0NVgo0GAq9MQZm1yKVXJo7zre4CVcw9uFZmcIXQMbsPtIXJynb5na0NM53xe3uI/0KungO2KMx0mQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324184; c=relaxed/simple; bh=Zx4FbCVNw5xSF8GjY5g+ReLvwcTy3T4vitIDT4pNMlI=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=n3gTukPpGakY4ngEt38+rt/8/dRAAp318qfQoh66i5pIZpVkQY4Jbjc01EfM867doqG1KqwesnKgu1PomtxZKvsDbxMkP+Efm/ioGzl1oQ897LridtfyCmYxND8+A94tzPYATft6wWVlJXisdOWA2tzGT0HmJmC8lkVQIo+Mi5U= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=bwSVE3Xr; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="bwSVE3Xr" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 5F02FC433C7; Sun, 24 Mar 2024 23:49:42 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324183; bh=Zx4FbCVNw5xSF8GjY5g+ReLvwcTy3T4vitIDT4pNMlI=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=bwSVE3XrRFpG4d6I1yrlrBS9WTOB8eG7wfSVOpJGwQu9qtrVT9jH5OJzkyDyCxawK cB0o2aGjWW/FdnUCDm4aKegX2SKu915dnarIPuOxophpvvvG99BCMYnKMD3Vi6gGgS qFnuGkdRLXFnWQTehBdZL6JMIp7eTMrKAp0a6oCjRuiXehrpUJ1JbTd3zXQ8gcVgXr hAcvKOY/JU8egphOthe4vHsmnwC6vhcyndnGnVAW9A9GwkALQFDtK4dyfe+JrKxtZ/ nw3aWfbR92cdMn2hz8dhM1PUCUjjNc2nWlXIQebImn/6ug/66xX2zTazKDjR4v+Ju5 ppkmubFm12NdQ== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Yewon Choi , Michal Kubiak , Paolo Abeni , Sasha Levin Subject: [PATCH 5.4 173/183] rds: introduce acquire/release ordering in acquire/release_in_xmit() Date: Sun, 24 Mar 2024 19:46:26 -0400 Message-ID: <20240324234638.1355609-174-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Yewon Choi [ Upstream commit 1422f28826d2a0c11e5240b3e951c9e214d8656e ] acquire/release_in_xmit() work as bit lock in rds_send_xmit(), so they are expected to ensure acquire/release memory ordering semantics. However, test_and_set_bit/clear_bit() don't imply such semantics, on top of this, following smp_mb__after_atomic() does not guarantee release ordering (memory barrier actually should be placed before clear_bit()). Instead, we use clear_bit_unlock/test_and_set_bit_lock() here. Fixes: 0f4b1c7e89e6 ("rds: fix rds_send_xmit() serialization") Fixes: 1f9ecd7eacfd ("RDS: Pass rds_conn_path to rds_send_xmit()") Signed-off-by: Yewon Choi Reviewed-by: Michal Kubiak Link: https://lore.kernel.org/r/ZfQUxnNTO9AJmzwc@libra05 Signed-off-by: Paolo Abeni Signed-off-by: Sasha Levin --- net/rds/send.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/net/rds/send.c b/net/rds/send.c index 6c2c5667e3a39..c0cebf4b4fe56 100644 --- a/net/rds/send.c +++ b/net/rds/send.c @@ -103,13 +103,12 @@ EXPORT_SYMBOL_GPL(rds_send_path_reset); =20 static int acquire_in_xmit(struct rds_conn_path *cp) { - return test_and_set_bit(RDS_IN_XMIT, &cp->cp_flags) =3D=3D 0; + return test_and_set_bit_lock(RDS_IN_XMIT, &cp->cp_flags) =3D=3D 0; } =20 static void release_in_xmit(struct rds_conn_path *cp) { - clear_bit(RDS_IN_XMIT, &cp->cp_flags); - smp_mb__after_atomic(); + clear_bit_unlock(RDS_IN_XMIT, &cp->cp_flags); /* * We don't use wait_on_bit()/wake_up_bit() because our waking is in a * hot path and finding waiters is very rare. We don't want to walk --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id E2C73182F08; Sun, 24 Mar 2024 23:49:44 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324186; cv=none; b=cC0qo4gSkCgC/MeS9g7TjRNObBt6imz9UhF6kAIpYdzDiIfNdxziAR+oWD28c/cTBXh3NJFdemhdHWoOy55JUn6Qm2YTJC354ZEHAADIL6PL4igRWxlrhljaR6NV8wOGncQ/yVqIsAaLiqUmYSSbM/05XE+Knav6AMJYlLnogFQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324186; c=relaxed/simple; bh=WKRm0SsyDJX7e+dk7G/AvnUAR+AksSTMbih9I2vwC+A=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=YhqdnuXcyzeot+j2j0w0p/ksWDdMr1fnH+RuUxwiRanmfAwUu2ukU8yj5CNOhosAidnN77sKun3Om8SywJhk2uggVFkqX5qXGQG3M/QjW6BFdotxs8LpeQgKnLfQRXF2axEU+Z2RIyO753Xf5iZyHqkRiSURvHDWuog60IAyT6Q= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=bFt9C6jR; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="bFt9C6jR" Received: by smtp.kernel.org (Postfix) with ESMTPSA id E1C71C433F1; Sun, 24 Mar 2024 23:49:43 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324184; bh=WKRm0SsyDJX7e+dk7G/AvnUAR+AksSTMbih9I2vwC+A=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=bFt9C6jRz17Jt31GLn//+F6N4Ik9/1+1ayqEVSEMk3XaFVDvrZ03Yk/7oEfrRGDTJ S3ZY0d5ubDvYuPV2Gl5R4V9Ktp2rzULyq1kKMKOSCb7aidnkeDcW5cDMxAnDaGpT7j YQtaEGRG79W2FpFtfnplYJshMzNizZeoDrs87QUeAtyUZHjhtLAy0w/4QjI/v2VJnb dLr1XbutU0f7lKWLy+nCrdo/F8RBzjIjX6WWE4dc1qheVUNZfU7WVZ9ERXkCEbr8Ry SFpesB9K6LIeyTq6mbnTm23+SzBCMVwQGg+jxZDkGkZqaRpz5m3zPGO/dOEz7Q9HbS p3/s+yHm97ikA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Felix Maurer , Shigeru Yoshida , Breno Leitao , Paolo Abeni , Sasha Levin Subject: [PATCH 5.4 174/183] hsr: Handle failures in module init Date: Sun, 24 Mar 2024 19:46:27 -0400 Message-ID: <20240324234638.1355609-175-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Felix Maurer [ Upstream commit 3cf28cd492308e5f63ed00b29ea03ca016264376 ] A failure during registration of the netdev notifier was not handled at all. A failure during netlink initialization did not unregister the netdev notifier. Handle failures of netdev notifier registration and netlink initialization. Both functions should only return negative values on failure and thereby lead to the hsr module not being loaded. Fixes: f421436a591d ("net/hsr: Add support for the High-availability Seamle= ss Redundancy protocol (HSRv0)") Signed-off-by: Felix Maurer Reviewed-by: Shigeru Yoshida Reviewed-by: Breno Leitao Link: https://lore.kernel.org/r/3ce097c15e3f7ace98fc7fd9bcbf299f092e63d1.17= 10504184.git.fmaurer@redhat.com Signed-off-by: Paolo Abeni Signed-off-by: Sasha Levin --- net/hsr/hsr_main.c | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/net/hsr/hsr_main.c b/net/hsr/hsr_main.c index 9e389accbfc7e..ea627e532aab8 100644 --- a/net/hsr/hsr_main.c +++ b/net/hsr/hsr_main.c @@ -113,14 +113,21 @@ static struct notifier_block hsr_nb =3D { =20 static int __init hsr_init(void) { - int res; + int err; =20 BUILD_BUG_ON(sizeof(struct hsr_tag) !=3D HSR_HLEN); =20 - register_netdevice_notifier(&hsr_nb); - res =3D hsr_netlink_init(); + err =3D register_netdevice_notifier(&hsr_nb); + if (err) + return err; + + err =3D hsr_netlink_init(); + if (err) { + unregister_netdevice_notifier(&hsr_nb); + return err; + } =20 - return res; + return 0; } =20 static void __exit hsr_exit(void) --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 52FD2182F0E; Sun, 24 Mar 2024 23:49:46 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324187; cv=none; b=OWQ5dmCeBcqo0UzbZxEFfy66ZfPnuANp5F9+rwyzTic3rI/axvh8hauoLTikfKoaaShOmHFWhHVsYoosrbQOXJXsem+wA0yT842slre06usRw45OAgpUkIoxqlcCXl9+EM0XJl5uri9PD3ageW7mAFcAUXvOvv/O0FMwlhz0iLI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324187; c=relaxed/simple; bh=6tgEHwdB/2sxObjfRMZfSDc5dC15G1jmT06In5W0jNA=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=BL7wPMRolOljZnL1eS8vR7sqG9qHiMhqi9qQGw6M//n1s0h0CUVhcecxAC8PuytERUQoumHyGJkjz2k2AFO9Ilt4mbaWQNJGU48USymKulQeY+yIYW5jJhrvq+OdD22E+2cZ9XLid+RFWC2GDBUTTQJvvrvZMqU99t8seTikQ6A= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=LRufjdLJ; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="LRufjdLJ" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 1177DC43399; Sun, 24 Mar 2024 23:49:44 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324186; bh=6tgEHwdB/2sxObjfRMZfSDc5dC15G1jmT06In5W0jNA=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=LRufjdLJPPHp7w+LhzfoIDGloWz6xLF9PPt1HwTJ0OpmaDdYDusMnsFWGa/87QsDs IYRRiFasH4ps3TFMOidOvec9Uk6eDV5lw6q5aUq0uk8810EeS+zO7Tf8YMGOBw8bQ6 6Z+XQpWhJyhxiKUxiQzNph6WxyOHHSHaIfVxJu6kuJH/id1pZdchL2qGxlvO8yGx2A FdO4Wszu2dk6vExDvNTyLXzEulRKwNKd3jeOyz6aGcyNFKWA3qerrLUQpLieZDaQF9 by9fVIcNBJSy/O7MMxCsz+4dkT3tGoxA28+RWP5CSNrTbB5/IIwq7x1sVjTS6ttZiH gv+J+vJyFDXJg== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Thinh Tran , Jiri Pirko , Jakub Kicinski , Sasha Levin Subject: [PATCH 5.4 175/183] net/bnx2x: Prevent access to a freed page in page_pool Date: Sun, 24 Mar 2024 19:46:28 -0400 Message-ID: <20240324234638.1355609-176-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Thinh Tran [ Upstream commit d27e2da94a42655861ca4baea30c8cd65546f25d ] Fix race condition leading to system crash during EEH error handling During EEH error recovery, the bnx2x driver's transmit timeout logic could cause a race condition when handling reset tasks. The bnx2x_tx_timeout() schedules reset tasks via bnx2x_sp_rtnl_task(), which ultimately leads to bnx2x_nic_unload(). In bnx2x_nic_unload() SGEs are freed using bnx2x_free_rx_sge_range(). However, this could overlap with the EEH driver's attempt to reset the device using bnx2x_io_slot_reset(), which also tries to free SGEs. This race condition can result in system crashes due to accessing freed memory locations in bnx2x_free_rx_sge() 799 static inline void bnx2x_free_rx_sge(struct bnx2x *bp, 800 struct bnx2x_fastpath *fp, u16 index) 801 { 802 struct sw_rx_page *sw_buf =3D &fp->rx_page_ring[index]; 803 struct page *page =3D sw_buf->page; .... where sw_buf was set to NULL after the call to dma_unmap_page() by the preceding thread. EEH: Beginning: 'slot_reset' PCI 0011:01:00.0#10000: EEH: Invoking bnx2x->slot_reset() bnx2x: [bnx2x_io_slot_reset:14228(eth1)]IO slot reset initializing... bnx2x 0011:01:00.0: enabling device (0140 -> 0142) bnx2x: [bnx2x_io_slot_reset:14244(eth1)]IO slot reset --> driver unload Kernel attempted to read user page (0) - exploit attempt? (uid: 0) BUG: Kernel NULL pointer dereference on read at 0x00000000 Faulting instruction address: 0xc0080000025065fc Oops: Kernel access of bad area, sig: 11 [#1] ..... Call Trace: [c000000003c67a20] [c00800000250658c] bnx2x_io_slot_reset+0x204/0x610 [= bnx2x] (unreliable) [c000000003c67af0] [c0000000000518a8] eeh_report_reset+0xb8/0xf0 [c000000003c67b60] [c000000000052130] eeh_pe_report+0x180/0x550 [c000000003c67c70] [c00000000005318c] eeh_handle_normal_event+0x84c/0xa= 60 [c000000003c67d50] [c000000000053a84] eeh_event_handler+0xf4/0x170 [c000000003c67da0] [c000000000194c58] kthread+0x1c8/0x1d0 [c000000003c67e10] [c00000000000cf64] ret_from_kernel_thread+0x5c/0x64 To solve this issue, we need to verify page pool allocations before freeing. Fixes: 4cace675d687 ("bnx2x: Alloc 4k fragment for each rx ring buffer elem= ent") Signed-off-by: Thinh Tran Reviewed-by: Jiri Pirko Link: https://lore.kernel.org/r/20240315205535.1321-1-thinhtr@linux.ibm.com Signed-off-by: Jakub Kicinski Signed-off-by: Sasha Levin --- drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.h b/drivers/net/= ethernet/broadcom/bnx2x/bnx2x_cmn.h index 3f63ffd7561bf..d17731cae8634 100644 --- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.h +++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.h @@ -1004,9 +1004,6 @@ static inline void bnx2x_set_fw_mac_addr(__le16 *fw_h= i, __le16 *fw_mid, static inline void bnx2x_free_rx_mem_pool(struct bnx2x *bp, struct bnx2x_alloc_pool *pool) { - if (!pool->page) - return; - put_page(pool->page); =20 pool->page =3D NULL; @@ -1017,6 +1014,9 @@ static inline void bnx2x_free_rx_sge_range(struct bnx= 2x *bp, { int i; =20 + if (!fp->page_pool.page) + return; + if (fp->mode =3D=3D TPA_MODE_DISABLED) return; =20 --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 4A6B3182F01; Sun, 24 Mar 2024 23:49:47 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324187; cv=none; b=nSmxPYmOAKoMkJYZk7cKDoqrWcNgif2J5qa+Li96m+yCL0am1rNARrysMKqyFEc7vSLr7/QcJgm24kq70eBodece3iTrH3G2mkeakrgdy0FnqloD0nVlgBWaZuNwNrtKd1ZwaVMu56QgdfwGdPoIlBydEU1vVqwM8Vh9gy6lwzA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324187; c=relaxed/simple; bh=fRXvuFU0WlFQfjxCQnnb4huqHAblWzbZf3aGXPO93Rc=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=jYl+556qipR2gNYllQvhysk4qHTa8Jai+EMqAw3O1DkoYgu7RPamXTLp99tmAw9KXQt7z5cZvA+7oZCf822DiKM0X2ZKFFD1GLqzxuGUwzALoiANZUyedBMxTdUs5OX7j5YdcD7HatxAGId2gEDRJt0YppFTGD/jvwmQGHjPUQE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=l5k+O3yB; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="l5k+O3yB" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 79193C433B1; Sun, 24 Mar 2024 23:49:46 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324187; bh=fRXvuFU0WlFQfjxCQnnb4huqHAblWzbZf3aGXPO93Rc=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=l5k+O3yBBIdCV71/znyrqpy3vYyZANyazZ+3T2xJekNhBuqTlJjRsORM1aftTAJbU 1a64P5W9fErWNzsbOhNAI7gNoWUsEe/MZlgkQSf6XIpCK8eIVw8mAlkE7WHsA7V6sR N0/Ipdh0xU8WzESvskm4tlkv0u/S/Wl1qo4uHPAUALjjFuqGH+gFohU7GjjVoeEsV1 bEBUuXS8/ZepcDYAOBEk6YC1Jo0Da8n8EmckIJx6HWnso12LIubYhb1UDincXqwMB3 Nn0aTWsiDhrq+cSZNStbhdN1BPg6L3awR1576wYGqNu3ifVmjzzMnvvQSZxo5Qzeus wFU9xSnXAoGzw== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Subbaraya Sundeep , "David S . Miller" , Sasha Levin Subject: [PATCH 5.4 176/183] octeontx2-af: Use separate handlers for interrupts Date: Sun, 24 Mar 2024 19:46:29 -0400 Message-ID: <20240324234638.1355609-177-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Subbaraya Sundeep [ Upstream commit 50e60de381c342008c0956fd762e1c26408f372c ] For PF to AF interrupt vector and VF to AF vector same interrupt handler is registered which is causing race condition. When two interrupts are raised to two CPUs at same time then two cores serve same event corrupting the data. Fixes: 7304ac4567bc ("octeontx2-af: Add mailbox IRQ and msg handlers") Signed-off-by: Subbaraya Sundeep Signed-off-by: David S. Miller Signed-off-by: Sasha Levin --- drivers/net/ethernet/marvell/octeontx2/af/rvu.c | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/drivers/net/ethernet/marvell/octeontx2/af/rvu.c b/drivers/net/= ethernet/marvell/octeontx2/af/rvu.c index 02b4620f7368a..9c6307186505a 100644 --- a/drivers/net/ethernet/marvell/octeontx2/af/rvu.c +++ b/drivers/net/ethernet/marvell/octeontx2/af/rvu.c @@ -1708,10 +1708,9 @@ static void rvu_queue_work(struct mbox_wq_info *mw, = int first, } } =20 -static irqreturn_t rvu_mbox_intr_handler(int irq, void *rvu_irq) +static irqreturn_t rvu_mbox_pf_intr_handler(int irq, void *rvu_irq) { struct rvu *rvu =3D (struct rvu *)rvu_irq; - int vfs =3D rvu->vfs; u64 intr; =20 intr =3D rvu_read64(rvu, BLKADDR_RVUM, RVU_AF_PFAF_MBOX_INT); @@ -1723,6 +1722,18 @@ static irqreturn_t rvu_mbox_intr_handler(int irq, vo= id *rvu_irq) =20 rvu_queue_work(&rvu->afpf_wq_info, 0, rvu->hw->total_pfs, intr); =20 + return IRQ_HANDLED; +} + +static irqreturn_t rvu_mbox_intr_handler(int irq, void *rvu_irq) +{ + struct rvu *rvu =3D (struct rvu *)rvu_irq; + int vfs =3D rvu->vfs; + u64 intr; + + /* Sync with mbox memory region */ + rmb(); + /* Handle VF interrupts */ if (vfs > 64) { intr =3D rvupf_read64(rvu, RVU_PF_VFPF_MBOX_INTX(1)); @@ -2035,7 +2046,7 @@ static int rvu_register_interrupts(struct rvu *rvu) /* Register mailbox interrupt handler */ sprintf(&rvu->irq_name[RVU_AF_INT_VEC_MBOX * NAME_SIZE], "RVUAF Mbox"); ret =3D request_irq(pci_irq_vector(rvu->pdev, RVU_AF_INT_VEC_MBOX), - rvu_mbox_intr_handler, 0, + rvu_mbox_pf_intr_handler, 0, &rvu->irq_name[RVU_AF_INT_VEC_MBOX * NAME_SIZE], rvu); if (ret) { dev_err(rvu->dev, --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 32FFD182F1E; Sun, 24 Mar 2024 23:49:48 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324189; cv=none; b=RcdD74nEdYV+FFsE5NMbdpoIahKyeVPpBAK0ezZpSF3m4cLke7w6ddeavCVDcyC7jiSz+3PSDN2SujZEKTTxelJ9flU1dgkA7Lhz5IzEp3rRb58KaTg8R544nONWOhDMnZnZ9+UnghNd6Qvq75oMkpv0hf07xabl8Ovqqavo0f4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324189; c=relaxed/simple; bh=nmx0U2KmulJ7xDHIJW5s6GGwnezIqUNiH+3mH1f/4gk=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=gAhFdo6J9mSxAryhAxAFZ6Zm0cTKXLovazodpoL1yl67nCNmimpoc8ZIOkP0QIBtIISoceKRj2sEeSxYlqzgfovPnFgXFtNm7MngQP73ZOry/sNWDeihw+T87jz5cxnERX0hTH08Ap/ayKVeamnKEoYvz6ZBTPkETbz8njRAfRo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=RiC0yUEE; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="RiC0yUEE" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 6CCD0C433F1; Sun, 24 Mar 2024 23:49:47 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324188; bh=nmx0U2KmulJ7xDHIJW5s6GGwnezIqUNiH+3mH1f/4gk=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=RiC0yUEEWFr22TOn6xOUxzvkbMJeV0xoOObD4Cx14gxW/s37jOt3vEDBpmTXQxfuV rFf21/JoCE5kBE/G5dv+FerOJSoyqxmE6MW6BJWYDLwGs1WyMljVQzi+lPG/kWq7au jJMwsqriz8/o+ACs2UtzRZNRRyXhN2Ca4mmK3yjGgR7ML70jIXHheFPsD6pmrEWb3a 9Oubb6mNdfLEkYaSeOEnsvoqIL9iDq6+T/s6HXIfkDloonehA/7aq2uViLIfagf8Aj GqU2CNtGC9HIy76gYNvSVcxuu/y1Hpp5D6lLkXZz9OhAX98xGlRu1ZXWLLla8/WumJ LL8BlCSB9F0UA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Michael Klein , Maxime Ripard , Sasha Levin Subject: [PATCH 5.4 177/183] ARM: dts: sun8i-h2-plus-bananapi-m2-zero: add regulator nodes vcc-dram and vcc1v2 Date: Sun, 24 Mar 2024 19:46:30 -0400 Message-ID: <20240324234638.1355609-178-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Michael Klein [ Upstream commit 23e85be1ec81647374055f731488cc9a7c013a5c ] Add regulator nodes vcc-dram and vcc1v2 to the devicetree. These regulators correspond to U4 and U5 in the schematics: http://forum.banana-pi.org/t/bpi-m2-zero-schematic-diagram-public/4111 Signed-off-by: Michael Klein Signed-off-by: Maxime Ripard Link: https://lore.kernel.org/r/20201130183841.136708-1-michael@fossekall.de Stable-dep-of: 4a0e7f2decbf ("netfilter: nf_tables: do not compare internal= table flags on updates") Signed-off-by: Sasha Levin --- .../dts/sun8i-h2-plus-bananapi-m2-zero.dts | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/arch/arm/boot/dts/sun8i-h2-plus-bananapi-m2-zero.dts b/arch/ar= m/boot/dts/sun8i-h2-plus-bananapi-m2-zero.dts index 4c6704e4c57ec..74d5732c412ba 100644 --- a/arch/arm/boot/dts/sun8i-h2-plus-bananapi-m2-zero.dts +++ b/arch/arm/boot/dts/sun8i-h2-plus-bananapi-m2-zero.dts @@ -62,6 +62,30 @@ reg_vdd_cpux: vdd-cpux-regulator { states =3D <1100000 0>, <1300000 1>; }; =20 + reg_vcc_dram: vcc-dram { + compatible =3D "regulator-fixed"; + regulator-name =3D "vcc-dram"; + regulator-min-microvolt =3D <1500000>; + regulator-max-microvolt =3D <1500000>; + regulator-always-on; + regulator-boot-on; + enable-active-high; + gpio =3D <&r_pio 0 9 GPIO_ACTIVE_HIGH>; /* PL9 */ + vin-supply =3D <®_vcc5v0>; + }; + + reg_vcc1v2: vcc1v2 { + compatible =3D "regulator-fixed"; + regulator-name =3D "vcc1v2"; + regulator-min-microvolt =3D <1200000>; + regulator-max-microvolt =3D <1200000>; + regulator-always-on; + regulator-boot-on; + enable-active-high; + gpio =3D <&r_pio 0 8 GPIO_ACTIVE_HIGH>; /* PL8 */ + vin-supply =3D <®_vcc5v0>; + }; + wifi_pwrseq: wifi_pwrseq { compatible =3D "mmc-pwrseq-simple"; reset-gpios =3D <&r_pio 0 7 GPIO_ACTIVE_LOW>; /* PL7 */ --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 0AB76182F0F; Sun, 24 Mar 2024 23:49:49 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324190; cv=none; b=FQETYQEV1YDgoW1S2GHQ33iSkz3aZP/9wX+UU+l2woSWPQYLwj1mvSn4K4P0ULXgjKjx9fHVX6T9MtSf/XEevw2LQP3UmxXqksssgA9457wdeUuBZw2j2tCzfe3yyvaHu/FpzUHEZ4SBWvf2OBXJQvPiRr6F2Q56m8Gi+X38yU8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324190; c=relaxed/simple; bh=harBe5+ycWcpGaaRXQex1N/DCMhWycMN9uszLnw1iR0=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=AH3duVF6UeDa6Gb4U8YJ+FFioH+E1wj4X3O92C2p6CTU1/cCb9BcGfUMnN7DTEJjaFjt3jRyVJHTQQHafH7QAXUfo1PRLFm3uHaGYE6REytkexHmoVPt1bE+XN4xXIRUN65Y5/JYqkpxwpS161o7NDNKKU8Z/VrRV0DFHTCvP6g= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=MFzZcTn/; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="MFzZcTn/" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 56B6CC433C7; Sun, 24 Mar 2024 23:49:48 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324188; bh=harBe5+ycWcpGaaRXQex1N/DCMhWycMN9uszLnw1iR0=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=MFzZcTn/xjGWWXfbIXc78apaQ9ewiZfz4SqlNXfWY5o2lZScsdcrtO6hY7WE5L2bR hfh+xsy60ohsON8FBsLaTxWu1kK2GWarSvLF0XeJ4suzJmFrLQCVJTtXc17byHvwVd JIsdY1SULoTKrppEZIW9TUprL8YLK5klLZ2pFaRn3ua5Fx9bPwv2R4bMrjgrJHvybj +YSwdA5HaTjxdQ3+0sYeyzYCiHTcScylXkPvXFSrv1W8XBToSJE55WWoI51IgtTIaH Cz7MIY9LQnx1ceJafGFFwS4CXHVQN1AIiFdc7yQgIsZm981S/W/8Eyr17TOxn96VVp cGTx5CXP7OLvQ== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Pablo Neira Ayuso , Sasha Levin Subject: [PATCH 5.4 178/183] netfilter: nf_tables: do not compare internal table flags on updates Date: Sun, 24 Mar 2024 19:46:31 -0400 Message-ID: <20240324234638.1355609-179-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Pablo Neira Ayuso [ Upstream commit 4a0e7f2decbf9bd72461226f1f5f7dcc4b08f139 ] Restore skipping transaction if table update does not modify flags. Fixes: 179d9ba5559a ("netfilter: nf_tables: fix table flag updates") Signed-off-by: Pablo Neira Ayuso Signed-off-by: Sasha Levin --- net/netfilter/nf_tables_api.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/netfilter/nf_tables_api.c b/net/netfilter/nf_tables_api.c index c5dbb950822fd..2d372d5fcbfaa 100644 --- a/net/netfilter/nf_tables_api.c +++ b/net/netfilter/nf_tables_api.c @@ -916,7 +916,7 @@ static int nf_tables_updtable(struct nft_ctx *ctx) if (flags & ~NFT_TABLE_F_DORMANT) return -EINVAL; =20 - if (flags =3D=3D ctx->table->flags) + if (flags =3D=3D (ctx->table->flags & NFT_TABLE_F_MASK)) return 0; =20 /* No dormant off/on/off/on games in single transaction */ --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id E24DD5D480; Sun, 24 Mar 2024 23:49:50 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324192; cv=none; b=cnYfd2xYl5jLEbMcRuHK9Pau7smtkuWQOy2dSLw1piJ5ZYsCyJD/ResnpoHAyXLjCROG8xK1si4xVNvkvis8gC4XkVDNBhBtlUQ0M0eqOb2rn0uFDUvkOh083eO6f9e7Hgq9LNfJjhABKBo+hEii0ff42o3Mq+fsme9v1FsFsIQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324192; c=relaxed/simple; bh=J43lLRphZYRRohaPDHmf5QhVkZ5bdqjpLcGmwgnUCQQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=unPiY8g5fdxh3ZruAPYpj95uBuWT3vJMnGU7fyJ9t+l5a9NWz2U0y7fGdsVs+PCwY2WuNAy9KSXUBPb+hMjT9Xpg0FjXF9lvEouY0T5tlnnuJFYYwpKj5s9xChWht79Y//vw24mNS1uqnNRM3azpY9zVfFQUbW7yZZjfuSb4g7E= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=ltMYaorK; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="ltMYaorK" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 81952C43390; Sun, 24 Mar 2024 23:49:49 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324190; bh=J43lLRphZYRRohaPDHmf5QhVkZ5bdqjpLcGmwgnUCQQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=ltMYaorKXHG1JD5EW95e1XhsCl2sm960PV5Z7wqV0FUOx1Pq5zNwLxxAN98s9cWOP BcCnVV/q1x6JR9EHo+LOFromr1egmOjwle+e9N6buLiAa9EvPKcDd4L3w43AINbCau V76HQxR1lQVbEjD7u3Z4sTWttpTMAb7xH9/rLDtQuXtV4Rkgn54/5FP5PTs38n3Mxa ivPCEIqbtF/RCRGvQ7676nnQMq6axpc73bE1NyHnMux7k4e5RW7PdgvhqEtUtfaZva GPXsi8tE/DRmqMN66TPobjZ5moWtoiYkmhEu1358pnkrY+8hz9mPguvbGxtRcggRRV br1HclUCQgZ+w== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Yan Zhai , "Paul E . McKenney" , Jesper Dangaard Brouer , Jakub Kicinski , Sasha Levin Subject: [PATCH 5.4 179/183] rcu: add a helper to report consolidated flavor QS Date: Sun, 24 Mar 2024 19:46:32 -0400 Message-ID: <20240324234638.1355609-180-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Yan Zhai [ Upstream commit 1a77557d48cff187a169c2aec01c0dd78a5e7e50 ] When under heavy load, network processing can run CPU-bound for many tens of seconds. Even in preemptible kernels (non-RT kernel), this can block RCU Tasks grace periods, which can cause trace-event removal to take more than a minute, which is unacceptably long. This commit therefore creates a new helper function that passes through both RCU and RCU-Tasks quiescent states every 100 milliseconds. This hard-coded value suffices for current workloads. Suggested-by: Paul E. McKenney Reviewed-by: Jesper Dangaard Brouer Signed-off-by: Yan Zhai Reviewed-by: Paul E. McKenney Acked-by: Jesper Dangaard Brouer Link: https://lore.kernel.org/r/90431d46ee112d2b0af04dbfe936faaca11810a5.17= 10877680.git.yan@cloudflare.com Signed-off-by: Jakub Kicinski Stable-dep-of: 00bf63122459 ("bpf: report RCU QS in cpumap kthread") Signed-off-by: Sasha Levin --- include/linux/rcupdate.h | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/include/linux/rcupdate.h b/include/linux/rcupdate.h index c75b38ba4a728..bc4b5c905a602 100644 --- a/include/linux/rcupdate.h +++ b/include/linux/rcupdate.h @@ -164,6 +164,37 @@ do { \ cond_resched(); \ } while (0) =20 +/** + * rcu_softirq_qs_periodic - Report RCU and RCU-Tasks quiescent states + * @old_ts: jiffies at start of processing. + * + * This helper is for long-running softirq handlers, such as NAPI threads = in + * networking. The caller should initialize the variable passed in as @old= _ts + * at the beginning of the softirq handler. When invoked frequently, this = macro + * will invoke rcu_softirq_qs() every 100 milliseconds thereafter, which w= ill + * provide both RCU and RCU-Tasks quiescent states. Note that this macro + * modifies its old_ts argument. + * + * Because regions of code that have disabled softirq act as RCU read-side + * critical sections, this macro should be invoked with softirq (and + * preemption) enabled. + * + * The macro is not needed when CONFIG_PREEMPT_RT is defined. RT kernels w= ould + * have more chance to invoke schedule() calls and provide necessary quies= cent + * states. As a contrast, calling cond_resched() only won't achieve the sa= me + * effect because cond_resched() does not provide RCU-Tasks quiescent stat= es. + */ +#define rcu_softirq_qs_periodic(old_ts) \ +do { \ + if (!IS_ENABLED(CONFIG_PREEMPT_RT) && \ + time_after(jiffies, (old_ts) + HZ / 10)) { \ + preempt_disable(); \ + rcu_softirq_qs(); \ + preempt_enable(); \ + (old_ts) =3D jiffies; \ + } \ +} while (0) + /* * Infrastructure to implement the synchronize_() primitives in * TREE_RCU and rcu_barrier_() primitives in TINY_RCU. --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id F30CC17ADCF; Sun, 24 Mar 2024 23:49:51 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324192; cv=none; b=HTnQZOTDCv32A0dAMOYGy+GOWTfFDKVQfZjtyY9901lHp3KsHxPqJMG4x53bI6qLCOwy//5/mNxLyOCPOVXt2MPNXop9mVpZuBURIV8UbfpT8ARvHJg017C8Y9isKLsZYxEnH8vHxdrnMQ/hX0OSkB/+mtYT1w7LRGLZmJUPrGE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324192; c=relaxed/simple; bh=cqG8zAIduB+HMGSaADU04Ol2ADU/OiKOhz3LLH4sFQg=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=A3IYVUMDwjZHMUiBHdkLE0Fm7gUW+RxLttHuOqTDjVL3MQTHmlo7aQw95LYm78PbfevOWeyyFRLVfJmhmXEC/+gYuH38LsEvekhcrKVHW00MkM+GNPof3McsyPREkMaxfhp8T4BymoSWyyhAHMN0ybt7fOPmWhYfzYBDLMDeD4M= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=QirIoVzc; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="QirIoVzc" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 10882C433B1; Sun, 24 Mar 2024 23:49:50 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324191; bh=cqG8zAIduB+HMGSaADU04Ol2ADU/OiKOhz3LLH4sFQg=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=QirIoVzc14Di3VZp8YOrmRJxuHAofsop7yxfWW0rAl8TMcalqr0qp5+Dhlf3kDmim /dfM9VV4cwvN0Z098t3CIjVYy1qWxAkO7nmWI4a0IS3mPgDDa5WVBLxSmqAU4dKE7s JzfFPyaQOlqDVxu9679U85Mr6RzhNyPy4zMnoA0PrU56imvNFg1cj0fmWkmhk7ebGa oNh79kaTQUjgSKAmEeOcEN7BAQluCqtQEOu3f2v9K/shhrztLn/JapGQfUCCkfNCKy jaC2BI8BSf9KqWA0cnvtdaaaPlGTJhp/2rI4qh9fIIDnfn2J3Xy2GMi7B2iCS5qcI8 2RSKn6wabuX5g== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Yan Zhai , Jesper Dangaard Brouer , "Paul E . McKenney" , Jakub Kicinski , Sasha Levin Subject: [PATCH 5.4 180/183] bpf: report RCU QS in cpumap kthread Date: Sun, 24 Mar 2024 19:46:33 -0400 Message-ID: <20240324234638.1355609-181-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Yan Zhai [ Upstream commit 00bf63122459e87193ee7f1bc6161c83a525569f ] When there are heavy load, cpumap kernel threads can be busy polling packets from redirect queues and block out RCU tasks from reaching quiescent states. It is insufficient to just call cond_resched() in such context. Periodically raise a consolidated RCU QS before cond_resched fixes the problem. Fixes: 6710e1126934 ("bpf: introduce new bpf cpu map type BPF_MAP_TYPE_CPUM= AP") Reviewed-by: Jesper Dangaard Brouer Signed-off-by: Yan Zhai Acked-by: Paul E. McKenney Acked-by: Jesper Dangaard Brouer Link: https://lore.kernel.org/r/c17b9f1517e19d813da3ede5ed33ee18496bb5d8.17= 10877680.git.yan@cloudflare.com Signed-off-by: Jakub Kicinski Signed-off-by: Sasha Levin --- kernel/bpf/cpumap.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/kernel/bpf/cpumap.c b/kernel/bpf/cpumap.c index a367fc8503933..19be747f4e5ab 100644 --- a/kernel/bpf/cpumap.c +++ b/kernel/bpf/cpumap.c @@ -249,6 +249,7 @@ static void put_cpu_map_entry(struct bpf_cpu_map_entry = *rcpu) static int cpu_map_kthread_run(void *data) { struct bpf_cpu_map_entry *rcpu =3D data; + unsigned long last_qs =3D jiffies; =20 set_current_state(TASK_INTERRUPTIBLE); =20 @@ -271,10 +272,12 @@ static int cpu_map_kthread_run(void *data) if (__ptr_ring_empty(rcpu->queue)) { schedule(); sched =3D 1; + last_qs =3D jiffies; } else { __set_current_state(TASK_RUNNING); } } else { + rcu_softirq_qs_periodic(last_qs); sched =3D cond_resched(); } =20 --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id F1ED118277F; Sun, 24 Mar 2024 23:49:52 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324194; cv=none; b=Fv2pNjOjxuJqPXIglG+bdmM7k3nTszndIqreSTmHMi+fdYIZzJueMw7UpNqfF0GvuC0KvCoKInQ2u9VSauge9NaID2OcH756jtId36M3PvBLs/TBpSE8Pq1ey68zi6JjluYwi9n74NRiw4PCLH69fs1hFDcDQHWDOmKPGbaLgtQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324194; c=relaxed/simple; bh=0Rc2g67sGLQFqzeHM5BrRlftSLE3u77pUTGIFlbaCNY=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=R6Iipa0xJENRoMNnMVO2kau2Jkhef2tHYlfQvqiASAk/akdl5P1nePtH2JHRr9UeY+Onr0LSPapGAFthqToFR99A9fULB/PV3K//dbDKoT1Uxit4Pyayiz73cZzjdFoSxZ7SDLESHhDFI9jXR/lIHAae6Fr/E2lrJ9pgvy4EnzE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=MglDmZVi; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="MglDmZVi" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 243D9C43390; Sun, 24 Mar 2024 23:49:52 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324192; bh=0Rc2g67sGLQFqzeHM5BrRlftSLE3u77pUTGIFlbaCNY=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=MglDmZViqDPqxaAYDZEnx9XpYzlM63NkkPRPO3YxLHBAMSBhQSt6cO28j5k+rumEs ydTEekpBNL7y7/8cOnDc1w+D+TQug5Ca325VramY7uZ1ss7tlP9OMKF8vvYFRZ5Ds3 46essnqNnMNU2ZQrZLSNvu3ZPj11gWY2jjiuSHHaWs81MjDSMgNnn3oZOSmS9XhbVs h7BFOBIO3NI1VYVPXajRWKmxBiz4Ix0O9u3QWBEk0hsy3GNkKKDfAKIc5VfUuGyU3q N9K3k4Ea1iIMrIASiSxBG0bKLyzhBpYZl4iBxViKLrquvq2WD+UoK6/JBTXhMvKSEP jQijVLHeq3p1w== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Fei Shao , AngeloGioacchino Del Regno , Mark Brown , Sasha Levin Subject: [PATCH 5.4 181/183] spi: spi-mt65xx: Fix NULL pointer access in interrupt handler Date: Sun, 24 Mar 2024 19:46:34 -0400 Message-ID: <20240324234638.1355609-182-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Fei Shao [ Upstream commit a20ad45008a7c82f1184dc6dee280096009ece55 ] The TX buffer in spi_transfer can be a NULL pointer, so the interrupt handler may end up writing to the invalid memory and cause crashes. Add a check to trans->tx_buf before using it. Fixes: 1ce24864bff4 ("spi: mediatek: Only do dma for 4-byte aligned buffers= ") Signed-off-by: Fei Shao Reviewed-by: AngeloGioacchino Del Regno Link: https://msgid.link/r/20240321070942.1587146-2-fshao@chromium.org Signed-off-by: Mark Brown Signed-off-by: Sasha Levin --- drivers/spi/spi-mt65xx.c | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/drivers/spi/spi-mt65xx.c b/drivers/spi/spi-mt65xx.c index 29d44f5d5212c..8105b458d12f7 100644 --- a/drivers/spi/spi-mt65xx.c +++ b/drivers/spi/spi-mt65xx.c @@ -559,17 +559,19 @@ static irqreturn_t mtk_spi_interrupt(int irq, void *d= ev_id) mdata->xfer_len =3D min(MTK_SPI_MAX_FIFO_SIZE, len); mtk_spi_setup_packet(master); =20 - cnt =3D mdata->xfer_len / 4; - iowrite32_rep(mdata->base + SPI_TX_DATA_REG, - trans->tx_buf + mdata->num_xfered, cnt); + if (trans->tx_buf) { + cnt =3D mdata->xfer_len / 4; + iowrite32_rep(mdata->base + SPI_TX_DATA_REG, + trans->tx_buf + mdata->num_xfered, cnt); =20 - remainder =3D mdata->xfer_len % 4; - if (remainder > 0) { - reg_val =3D 0; - memcpy(®_val, - trans->tx_buf + (cnt * 4) + mdata->num_xfered, - remainder); - writel(reg_val, mdata->base + SPI_TX_DATA_REG); + remainder =3D mdata->xfer_len % 4; + if (remainder > 0) { + reg_val =3D 0; + memcpy(®_val, + trans->tx_buf + (cnt * 4) + mdata->num_xfered, + remainder); + writel(reg_val, mdata->base + SPI_TX_DATA_REG); + } } =20 mtk_spi_enable_transfer(master); --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 1015728FEA6; Sun, 24 Mar 2024 23:49:54 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324195; cv=none; b=VgHXr1d5piLPrzYSsnOqd+rWdyqxOlHmxAec3tdvXdoAxhShy4/cnaLAsql/zCivx9hedH9nfpPP3ok0VMH8OGDLixTcJbPNJrvmGCTrwYwg2tMSmMwCHP/oQkDIGpl7XpxOye2jy7dneelkIveOmHgXMIuC8G20lDjF9jcDfHk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324195; c=relaxed/simple; bh=D6V+Tcu42Mf+jKMEP/afsoO7kJ5dCl76rEfLjOJTwlo=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=WxANOlpHupTGJT4kB+NtsfPyuyet/qN0oqYvShgAUB2Ke/61v/1PRbsjFm0uwCI6JjGfqBGaJFI7/o5EQqo9yWC3YmnLYcJ4lMEAJstDwrUwvPOzFZ72Zo57bXMIkJ1XrBJ/aPbI7zfbkB319atJpYRbNfGB0y4S13NbwebEoDA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=DiufjEYD; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="DiufjEYD" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 21D28C433C7; Sun, 24 Mar 2024 23:49:53 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324193; bh=D6V+Tcu42Mf+jKMEP/afsoO7kJ5dCl76rEfLjOJTwlo=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=DiufjEYDahfWM3nL0NGMQqp4uQZ118TizhhoXWZvKcSIkZS4NEy1KIZXd5FKDpobo 7UrFgwltyM4iDWgwBzXn6hGelYRKtbGq2Nr9Rhc2iZkSL5vR2bHAw26fV64OPpelF2 doaJrq6S1/eNmHiviTZYOh9pypQchrDSvwFCPX/26Tjkklyf+NwKHDp/0BLza9MUbZ i6ARSxGobYBRBtEg05aEJ891F/rlfyBqF2qoJo0JbW4jA7CJwSpYh3mocCrZYJrs4O y3YwDYUCKixiCkBCkuILfLSlRpDy5lE6JA0egrO+J2tvfj5XWToJKyTlaa/TaxxjEM oP1GHNuw3rK6Q== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Marek Vasut , kernel test robot , Dan Carpenter , Mark Brown , Sasha Levin Subject: [PATCH 5.4 182/183] regmap: Add missing map->bus check Date: Sun, 24 Mar 2024 19:46:35 -0400 Message-ID: <20240324234638.1355609-183-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Marek Vasut [ Upstream commit 5c422f0b970d287efa864b8390a02face404db5d ] The map->bus can be NULL here, add the missing NULL pointer check. Fixes: d77e745613680 ("regmap: Add bulk read/write callbacks into regmap_co= nfig") Reported-by: kernel test robot Reported-by: Dan Carpenter Signed-off-by: Marek Vasut Cc: Dan Carpenter Cc: Mark Brown To: linux-kernel@vger.kernel.org Link: https://lore.kernel.org/r/20220509003035.225272-1-marex@denx.de Signed-off-by: Mark Brown Signed-off-by: Sasha Levin --- drivers/base/regmap/regmap.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/base/regmap/regmap.c b/drivers/base/regmap/regmap.c index 6f580883c1973..aa9c6e0ff878d 100644 --- a/drivers/base/regmap/regmap.c +++ b/drivers/base/regmap/regmap.c @@ -1648,7 +1648,7 @@ static int _regmap_raw_write_impl(struct regmap *map,= unsigned int reg, map->format.reg_bytes + map->format.pad_bytes + val_len); - else if (map->bus->gather_write) + else if (map->bus && map->bus->gather_write) ret =3D map->bus->gather_write(map->bus_context, map->work_buf, map->format.reg_bytes + map->format.pad_bytes, --=20 2.43.0 From nobody Fri Dec 19 21:35:41 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C387B28FEAA; Sun, 24 Mar 2024 23:49:54 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324195; cv=none; b=N+bFoZMyZaTQT7N1pbFq13u+WmC758CGypQ2LcvJ62Er7BQjFauc8bGuQLPDDz2KA2LIEUQeqYCT+gb2Y/C1rFsOUvqpHaO3wMPwlkPHFWuBcU/Z1SP0Yi3Z0IVi4k9I6u9QkNLs9XmTz11SMS2Tb080ASk1RBlZ6r3L6680YxM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711324195; c=relaxed/simple; bh=BGr5Kim+ObIEgA059GrzTSmPeFp/yrDV29RR3h9nPwY=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=QQyBDkuf0HkH7vWHNd2dxJ5OKePnPijMVWM5TRxT+PSqLYvmdvJvAi8vBoSt3pWcvrRY55FTr0Ru8Rjixwy+atWoXSNKB13vCgh5gfE+odNOAsktMckuU3PISf5zi0Nl0C0RSOjV6WFkPApuMqEiNEzBSFzXqtSdyA/hPZX9YiE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=E6IS4zPC; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="E6IS4zPC" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 30BB7C43394; Sun, 24 Mar 2024 23:49:54 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711324194; bh=BGr5Kim+ObIEgA059GrzTSmPeFp/yrDV29RR3h9nPwY=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=E6IS4zPClcPiVvae77JvBEDL+ZBFF+fDmCmYgO1sK2JkmOe80KJdAE/gA6gDoU9NJ H239Cikrtc/YTvHyhzXFEGNk2FxqYdwaZna6kY0ZqqOoj8Z+XzeMFPiQnhLeR0pms9 uOwHGlZZJ8MFRE226Mi1FrPDA5WMHaD0KA5/v5lB+uUw+rtH3hr2svxK8cl0g3M+A7 FcBAsi94m/dlao8UquL6R/R+as5TGdbGyz3dJ2q/iEBf+ny/C+y+7VZQ38faM5oH2Z /oPeky7leSDiCp/fsgoBeZ8vjlWDHMeZzBj7dTpGK7zR3nuj4mJMAH7f6nM5AujTln 2RhqpV/HhfozQ== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Sasha Levin Subject: [PATCH 5.4 183/183] Linux 5.4.273-rc1 Date: Sun, 24 Mar 2024 19:46:36 -0400 Message-ID: <20240324234638.1355609-184-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240324234638.1355609-1-sashal@kernel.org> References: <20240324234638.1355609-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Signed-off-by: Sasha Levin --- Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index 184b31e84b99c..f6ceb2cc87f25 100644 --- a/Makefile +++ b/Makefile @@ -1,8 +1,8 @@ # SPDX-License-Identifier: GPL-2.0 VERSION =3D 5 PATCHLEVEL =3D 4 -SUBLEVEL =3D 272 -EXTRAVERSION =3D +SUBLEVEL =3D 273 +EXTRAVERSION =3D -rc1 NAME =3D Kleptomaniac Octopus =20 # *DOCUMENTATION* --=20 2.43.0