From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756727AbYESW4d (ORCPT ); Mon, 19 May 2008 18:56:33 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1753373AbYESW4Z (ORCPT ); Mon, 19 May 2008 18:56:25 -0400 Received: from vena.lwn.net ([206.168.112.25]:39458 "EHLO vena.lwn.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752906AbYESW4Y (ORCPT ); Mon, 19 May 2008 18:56:24 -0400 To: Roland Dreier Cc: Linus Torvalds , Ingo Molnar , Andrew Morton , Peter Zijlstra , Thomas Gleixner , Alan Cox , Alexander Viro , linux-kernel@vger.kernel.org, Stephen Rothwell Subject: Re: [PATCH, RFC] Char dev BKL pushdown v2 From: corbet@lwn.net (Jonathan Corbet) In-reply-to: Your message of "Mon, 19 May 2008 15:18:06 PDT." Date: Mon, 19 May 2008 16:56:24 -0600 Message-ID: <26562.1211237784@vena.lwn.net> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Roland Dreier wrote: > Thanks. Just to be super-explicit, ioctl() cannot be called on a given > file until the open() for that particular file has returned, right? ioctl() will not be called on a given file descriptor before open() is done, no. If there are other file descriptors open, though, somebody can be calling ioctl() on them while the open() for the new one is executing. > And the point about driver initialization is that open() can be called > as soon as the file operations are registered, even if the module_init > function has not returned? That is the point, yes. The key there is to avoid registering the device before everything has been set up to actually manage the device. jon