linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Bryan O'Sullivan" <bos@pathscale.com>
To: Greg Kroah-Hartman <greg@kroah.com>
Cc: Andrew Morton <akpm@osdl.org>, Roland Dreier <rdreier@cisco.com>,
	linux-kernel@vger.kernel.org, openib-general@openib.org
Subject: Re: RFC: ipath ioctls and their replacements
Date: Wed, 25 Jan 2006 14:32:41 -0800	[thread overview]
Message-ID: <1138228361.15295.55.camel@serpentine.pathscale.com> (raw)
In-Reply-To: <1137631411.4757.218.camel@serpentine.pathscale.com>

I've been flailing away at the ioctls in our driver, with a good degree
of success.  However, one in particular is proving tricky:

>         Opening the /dev/ipath special file assigns an appropriate free
>         unit (chip) and port (context on a chip) to a user process.
>         Think of it as similar to /dev/ptmx for ttys, except there isn't
>         a devpts-like filesystem behind it.  Once a process has
>         opened /dev/ipath, it needs to find out which unit and port it
>         has opened, so that it can access other attributes in /sys.  To
>         do this, we provide a GETPORT ioctl.

I still don't see how to replace this with anything else without
performing unnatural acts.

We use struct file's private_data to keep a pointer to the device in
use, which works fine for ioctl.

However, if I'm coming into the kernel over a netlink socket, I have no
obvious way of going from my table of devices to the processes that have
each one open, and I see no evidence that any other device driver tries
to do anything like this either.

Short of keeping a reference to the task_struct in the device, or
walking the sending process's file table if we receive a netlink message
(both of which are disgusting), I see no way to make this ioctl go away.

Am I missing something?

	<b


  parent reply	other threads:[~2006-01-25 22:32 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-01-19  0:43 RFC: ipath ioctls and their replacements Bryan O'Sullivan
2006-01-19  0:48 ` David S. Miller
2006-01-19  1:14   ` Bryan O'Sullivan
2006-01-19  1:17     ` David S. Miller
2006-01-19  5:17       ` Bryan O'Sullivan
2006-01-19  5:43         ` Greg KH
2006-01-19  0:53 ` Greg KH
2006-01-19  1:17   ` Bryan O'Sullivan
2006-01-19  2:54     ` Greg KH
2006-01-19  2:57 ` Greg KH
2006-01-19  3:49   ` Andrew Morton
2006-01-19  4:03     ` Greg KH
2006-01-19  5:02   ` Bryan O'Sullivan
2006-01-19  5:39     ` Greg KH
2006-01-19  5:53       ` Bryan O'Sullivan
2006-01-19 22:57         ` Greg KH
2006-01-19 23:44           ` Bryan O'Sullivan
2006-01-20  0:02             ` [openib-general] " Sean Hefty
2006-01-19  8:25 ` Eric W. Biederman
2006-01-19  8:39   ` David S. Miller
2006-02-24 20:19     ` [PATCH 1/1] Topology c fix Zachary Amsden
2006-02-25  0:17       ` Andrew Vasquez
2006-01-19 16:29   ` RFC: ipath ioctls and their replacements Bryan O'Sullivan
2006-01-19 18:20     ` Eric W. Biederman
2006-01-19 18:50       ` [openib-general] " Sean Hefty
2006-01-19 18:55         ` Bryan O'Sullivan
2006-01-19 20:31           ` Eric W. Biederman
2006-01-19 21:53             ` Bryan O'Sullivan
2006-01-19 21:08           ` Sean Hefty
2006-01-19 21:52             ` Bryan O'Sullivan
2006-01-19 18:50       ` Bryan O'Sullivan
2006-01-19 20:29         ` Eric W. Biederman
2006-01-19 20:47           ` [openib-general] " Steve Wise
2006-01-19 22:13           ` Bryan O'Sullivan
2006-01-21  4:40   ` Roland Dreier
2006-01-25 22:32 ` Bryan O'Sullivan [this message]
2006-01-25 22:43   ` [openib-general] " Muli Ben-Yehuda
2006-01-25 22:55     ` Bryan O'Sullivan

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1138228361.15295.55.camel@serpentine.pathscale.com \
    --to=bos@pathscale.com \
    --cc=akpm@osdl.org \
    --cc=greg@kroah.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=openib-general@openib.org \
    --cc=rdreier@cisco.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).