From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-lf1-f50.google.com (mail-lf1-f50.google.com [209.85.167.50]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id D8B8939282B for ; Wed, 1 Jul 2026 23:17:10 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.167.50 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1782947833; cv=none; b=AIBj6zMBp8DYOH+ZLfUQUYQKwT6moFvp+q9WcrpKZRSZ6BtImzeevIc21AqVjx2d0YkJSn7zFcPBgp5GG/J1FZDkBQOD71bPL6b9arSTsdN6R7bNSlqyQJYLwA4aBwxFQkTsi2AILSfYo8YpdIdFASx3prZzcr6ls5hLB5TsLLU= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1782947833; c=relaxed/simple; bh=eZBBq1HJLKN1iFZg5sW00tht53ixilfzz3xm89z6CHU=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=ovED3IPW8dlWBFZ+WypLc3F34ejvuThlg35aCEgfCj2PYtiSB8jw5sEaBbMjQl2GQkSGCL4zxD8ychndKP/EN3Hl7zsbaWrjLwF2glOAifcsPYTxKXA9dCRiLZkjiQZjbIhk0YrZpOLw79GHsOPGEAnIaNtFT6qlEIkcqGwDEbM= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=UpkH1ZIy; arc=none smtp.client-ip=209.85.167.50 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="UpkH1ZIy" Received: by mail-lf1-f50.google.com with SMTP id 2adb3069b0e04-5aeae350e0aso1173434e87.1 for ; Wed, 01 Jul 2026 16:17:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1782947829; x=1783552629; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=BlV+b2hyTXngEK/PbvCEICZBOhLaT4J0DD/N8TVmLnU=; b=UpkH1ZIy72vJadPxiB6K58Q8OOrsHMc7snhXQsogqpVIUCNWsNB2VgR0M4ITnbl9Vv +tNAAZzGbqSasGhCy+Lt8KwfEWIgxxzVJq+RJY67GP5lBKqHaOn/pmvX6yYBtAf3iAR+ 2E0g7Y3bXgp6h3xuvtq8mu5z3Q1NLFZxnzAiwxzkBDM4DKjYuItBm063EtMp9Bj62eT0 ZUgYMmoNso4ChoU6xTxuATd6dSXN7fpadclQpu5DesaR8v86zwi+6o/uFY7Z0qOcN6HU viLZhN6GM18qAkigJbYEl62RfCODyHHGyPUsZRLaFcHDIfzLuPbtQNHVfL9KeaZ59ADp awSg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1782947829; x=1783552629; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=BlV+b2hyTXngEK/PbvCEICZBOhLaT4J0DD/N8TVmLnU=; b=X8RZo7/JRxgQFmB5v8JkfwH3YZIyJr4WAzim8ekktj2JGr07e3Dqb+GfRWfRahYDHV netANC8sMnHFN5vmgTe0fFQ4XV2+e3fJblHo4PeAEJwttbZ2FCAZ+yEnDZ3r0P96WRHL 6/UveFdvivk3ijuBMKhYnEAYgZVYuioF28tGrHFA0zlVEvsL5bPrZXEtbkr2oR8ofW+e XNGXLSscYsTHhw/jAgC6qp6LT4aYrH784PHU9ELTB6s1PnYljx9MIbj7XfiMUk8mQIeE G9wciq6bQG09aCq6hyfVfalMb0OSZefERUQRM8xunYalvue8wd4fQnq69oX4/VUtYAGr Z7gA== X-Forwarded-Encrypted: i=1; AHgh+Rqt2g9RUBeQNWGKMVXvl/35mCIM3E0s8rI/d1fS8MVN3IzLD24MgNNHOe+0iA3WJ2wlkLGIG7J9a808OOE=@vger.kernel.org X-Gm-Message-State: AOJu0YzMfwC6+jxNJSR247LdsF3IGnLz61BVjYW4qRolK96RMStFLqvy NaybxpFXJKXzleEOrhZRM835zL5xMd1yNiQHi+2RL4TU6mfymKbmO0CT X-Gm-Gg: AfdE7clrBLZ6/24OZRi8Hi8D+hsXuP4GEzmGh1/5Z/PjDBor7/fvt2JfE+2QLLIhpAd 3Ou/Cow22UasYOVulaUfg3cPZwFaxX4H5ygYOz+/AM4dfZ/2WhE+2yHQgDbx/JEYTJqQzZtcB+w 5VAiJzn5A78iNmv1rwD1rySLpho3gtQgrlJFmTaB3PKrIrApFq5aIdxjY6+HNb6EFoESGmrtZ1Y Egfk5TvrVFE8BMGr8oUc2bw5g3m3U7VXcmrk9B0FF6i4X4ngKtBEVkrgQ81zRKBsCyPpAu2/zf+ 87naalGw+u+v2SZVczHBleyQOhjMEv/Vz77h0wKaoYINwJ3ulkgYEr5N3f0iw+HYGrbv8sVonLB TXtbaj3CIkwzia7A8+34MGALbykAurDUUkmr8P3pqkueBtJlYwA7pQfCnW7PpBvNYqQttd7SU+i OMoICulpMO17fXhmIXSpJ6YEqCVknRadQ= X-Received: by 2002:a05:6512:4501:b0:5ae:b260:cf47 with SMTP id 2adb3069b0e04-5aec6795b38mr793205e87.10.1782947828852; Wed, 01 Jul 2026 16:17:08 -0700 (PDT) Received: from localhost.localdomain ([2a01:4f9:2a:1c13::2]) by smtp.gmail.com with ESMTPSA id 2adb3069b0e04-5aec8991974sm308950e87.4.2026.07.01.16.17.06 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 01 Jul 2026 16:17:06 -0700 (PDT) From: Melbin K Mathew To: deller@gmx.de Cc: linux-fbdev@vger.kernel.org, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, Melbin K Mathew Subject: [PATCH v2 0/2] fbdev: fix mode sysfs lifetime and bounds issues Date: Thu, 2 Jul 2026 01:17:04 +0200 Message-Id: <20260701231706.234715-1-mlbnkm1@gmail.com> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20260701221757.231490-1-mlbnkm1@gmail.com> References: <20260701221757.231490-1-mlbnkm1@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This v2 addresses the remaining fbdev mode sysfs lifetime issues noted during review. Patch 1 bounds mode sysfs output so show_modes() cannot advance the sysfs buffer offset past PAGE_SIZE. mode_string() is given a size parameter and switched to scnprintf(). Patch 2 serializes mode sysfs access with lock_fb_info(), including store_mode(), show_mode(), and show_modes(), so these paths cannot race with store_modes() while it replaces and frees the old modelist. Changes in v2: - Add bounds handling for mode_string()/show_modes(). - Extend locking to store_mode() via activate_locked(). - Keep show_mode() using a stack copy after dropping lock_fb_info(). - Avoid overclaiming unprivileged impact in the commit text. Melbin K Mathew (2): fbdev: bound mode sysfs output to the sysfs buffer fbdev: serialize mode sysfs access with lock_fb_info() drivers/video/fbdev/core/fbsysfs.c | 59 ++++++++++++++++++++++++------ 1 file changed, 47 insertions(+), 12 deletions(-) -- 2.39.5