From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753630AbbCWNBl (ORCPT ); Mon, 23 Mar 2015 09:01:41 -0400 Received: from mx02.posteo.de ([89.146.194.165]:40271 "EHLO mx02.posteo.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752764AbbCWNAy (ORCPT ); Mon, 23 Mar 2015 09:00:54 -0400 From: Martin Kepplinger To: tomvanbraeckel@gmail.com Cc: linux-kernel@vger.kernel.org, gregkh@linuxfoundation.org, arnd@arndb.de, Martin Kepplinger Subject: [PATCH 4/4] lguest: explicitly set miscdevice's private_data NULL Date: Mon, 23 Mar 2015 13:59:49 +0100 Message-Id: <1427115589-469-5-git-send-email-martink@posteo.de> X-Mailer: git-send-email 2.1.4 In-Reply-To: <1427115589-469-1-git-send-email-martink@posteo.de> References: <1427115589-469-1-git-send-email-martink@posteo.de> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org There is a proposed change to the miscdevice's behaviour on open(). Currently file->private_data stays NULL, but only because we don't have an open-entry in struct file_operations. This may change so that private_data, more consistently, is always set to struct miscdevice, not only *if* the driver has it's own open() routine and fops-entry, see https://lkml.org/lkml/2014/12/4/939 In short: If we rely on file->private_data being NULL, we should ensure it is NULL ourselves. Signed-off-by: Martin Kepplinger --- drivers/lguest/lguest_user.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/drivers/lguest/lguest_user.c b/drivers/lguest/lguest_user.c index c4c6113..30c6068 100644 --- a/drivers/lguest/lguest_user.c +++ b/drivers/lguest/lguest_user.c @@ -339,6 +339,13 @@ static ssize_t write(struct file *file, const char __user *in, } } +static int open(struct inode *inode, struct file *file) +{ + file->private_data = NULL; + + return 0; +} + /*L:060 * The final piece of interface code is the close() routine. It reverses * everything done in initialize(). This is usually called because the @@ -409,6 +416,7 @@ static int close(struct inode *inode, struct file *file) */ static const struct file_operations lguest_fops = { .owner = THIS_MODULE, + .open = open, .release = close, .write = write, .read = read, -- 2.1.4