Received: by 2002:a05:6358:a55:b0:ec:fcf4:3ecf with SMTP id 21csp6619459rwb; Wed, 18 Jan 2023 07:24:37 -0800 (PST) X-Google-Smtp-Source: AMrXdXs5VAPwMRPBVjFxFABsuAEC/tdGkyg+0fDq3i13NOcdR6/9uVMtbbtwB8RKiLZoVedng0WG X-Received: by 2002:a05:6a20:691d:b0:af:b909:2b34 with SMTP id q29-20020a056a20691d00b000afb9092b34mr8548514pzj.41.1674055477451; Wed, 18 Jan 2023 07:24:37 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1674055477; cv=none; d=google.com; s=arc-20160816; b=AsbxdtkRqUZFCztpMv9It+4TY2uhKAyHU+ylqWFZKBOrCIf/RgX8FrlytkgmA93afR CbfGGn7mecUxanfojxAYBKpWD8aJO4S1ly4CDOyCgrtG0d3ApFFcOWHIG/+XOg5Q4z6W 82qM8/L8YzL2WVQRK9VGv71hCNuIi03IzVYfIBtsS3dmNANRHygl5Sg8RJBSuIi6O29B 11GxTCb+PZpcv0pxnVfVie8k/a7sLBCtktGMWGBmH/6WAGd6/jHxDXHkhjZ48U5GJSHE HpFC/zYC1g9+Ohro7l9AXfnqQAuZx1/6oXa8LkQpJsjCw5SEqDynt4FhwDoVoIWKRMTs i1DQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature; bh=C8wyUQXeegRLF3CuYjsfzh5QAgXDnILh78T7CIz6G4s=; b=RAgRwbYiZxd9jmGjZgEeVJNG4CPV5HBD6heESkmkZYSMWhT8y/o+XUnKJ7LCDXsCIh pZSyBK+iWNWCxo7ZnzoqIBosEzT9294yZ7iean0E5IctfFdp+nELLGBNIWzymZww04w9 dplkrdaIWu8lKbzgqoFFjSv54C46Bye6dsNklW2a7ERV7ZHKTEK4TEdbo4dQyZ83vu1U o0PcDnumOSag7+6aIKbqboWxcooqWKo18TUBLfN8kA9ZI71WnedIe8yVTJt4jKk+dd9P D3L0I2YZBxH42OqiYNkY6jDMJROZFEl5wIkxz2ahNYBqW4kZc2UNw+oFywf9sk7YELDy 0BLQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@bgdev-pl.20210112.gappssmtp.com header.s=20210112 header.b=mOEc+THH; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id z9-20020a63e549000000b004c76dcc99c2si14728653pgj.334.2023.01.18.07.24.31; Wed, 18 Jan 2023 07:24:37 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@bgdev-pl.20210112.gappssmtp.com header.s=20210112 header.b=mOEc+THH; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230500AbjARPH3 (ORCPT + 45 others); Wed, 18 Jan 2023 10:07:29 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:39058 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230304AbjARPHY (ORCPT ); Wed, 18 Jan 2023 10:07:24 -0500 Received: from mail-vs1-xe2f.google.com (mail-vs1-xe2f.google.com [IPv6:2607:f8b0:4864:20::e2f]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 806DB3C21 for ; Wed, 18 Jan 2023 07:07:23 -0800 (PST) Received: by mail-vs1-xe2f.google.com with SMTP id 3so36015055vsq.7 for ; Wed, 18 Jan 2023 07:07:23 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20210112.gappssmtp.com; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=C8wyUQXeegRLF3CuYjsfzh5QAgXDnILh78T7CIz6G4s=; b=mOEc+THH3zT9L2WiC02QNm4zeY1Um5JRy2avTZO4y87DVKj2sBsz8+qZ1lMyR8CCVy 9BkRO9J7IQ73de0qb8ppWkmpkWfN/2zMyeWDSMQ+Ej2ZVMPaT4GKFF374OdHJJ1v9i3t 2+JuddVGOB2bUclkYEovh9lngTJN9MsvBYSQqVdlD38u8l+Q2UwGgTXMVIYa7HifZYHt v1yk442Cga29dvZryyV9pOk5H0BYQnSXQLEMZpXIWd+QIuUpVlBGzuB3nv1I9gxzyAml u7qsPAnAVRTOa7FBesy5z1QTXf2p7NFNVD++gbemYkHnpDk0UoTXT+kbbpzAo+G/TACS k51A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=C8wyUQXeegRLF3CuYjsfzh5QAgXDnILh78T7CIz6G4s=; b=nyPkr4oFktYyXJzQHFPThFSPNT9E1g6T396LKh6FfCUHr3DeaUge1xBiatRX42IUVj IMLwitYKDkF8eqEJpLnhoqaxY3IEoWH7Gc4613Ts10VRdeNSjadqbwwhQyNH9rWUzIV+ eTSTJCD0vOLXCpQ7lVFf5sfSVR1QXYQYUJYjnMWkT4B1Rs0dkiQKWgsvBg4fSQ6MlfQF edDQpNP+Aslyfu0J5KhNopAh1lnEI3StIqA5zJzdWNdoOrNfhMrv+UzDvHMdoFIAy7CY ZL9/7TYGKJfyjwL8I7du6HqoAGQeqKFCPql2MBcIJODc26TQ2jO2Q11lppAyp4js5tTu 2YjQ== X-Gm-Message-State: AFqh2kpgMjyqAKYSs+9uIjDE9CfiaMu5ViKo/o+boZSpAVoczJftQ5Z1 nv+jqPbOAC5GrulBwzM3ccq55+dfA9dzbPmKpx6zexGFxhnvcQ== X-Received: by 2002:a67:c387:0:b0:3d2:3577:2d05 with SMTP id s7-20020a67c387000000b003d235772d05mr912178vsj.9.1674054442628; Wed, 18 Jan 2023 07:07:22 -0800 (PST) MIME-Version: 1.0 References: <20221229160045.535778-1-brgl@bgdev.pl> <20221229160045.535778-3-brgl@bgdev.pl> <20230118145914.3012-1-hdanton@sina.com> In-Reply-To: <20230118145914.3012-1-hdanton@sina.com> From: Bartosz Golaszewski Date: Wed, 18 Jan 2023 16:07:11 +0100 Message-ID: Subject: Re: [PATCH v2 2/2] i2c: dev: don't allow user-space to deadlock the kernel To: Hillf Danton Cc: Wolfram Sang , linux-i2c@vger.kernel.org, linux-kernel@vger.kernel.org, Bartosz Golaszewski Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_NONE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Jan 18, 2023 at 3:59 PM Hillf Danton wrote: > > On Thu, 29 Dec 2022 17:00:45 +0100 Bartosz Golaszewski > > > > @@ -44,8 +45,14 @@ struct i2c_dev { > > struct i2c_adapter *adap; > > struct device dev; > > struct cdev cdev; > > + struct rw_semaphore sem; > > int state; > #define STATE_RELEASED 1 > #define STATE_DETACHED 2 > > }; > > Because syscalls like read, write and ioctl have completed upon release, > serializing the release and detach pathes is a cure to the issue. > Please elaborate because I have no idea what you mean by that. Bart