From: Frederic Weisbecker <fweisbec@gmail.com>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Arnd Bergmann <arnd@arndb.de>,
LKML <linux-kernel@vger.kernel.org>,
Thomas Gleixner <tglx@linutronix.de>,
Al Viro <viro@zeniv.linux.org.uk>, Jan Blunck <jblunck@suse.de>,
Ingo Molnar <mingo@elte.hu>, John Kacur <jkacur@redhat.com>
Subject: Re: [GIT PULL v2] Preparation for BKL'ed ioctl removal
Date: Sun, 25 Apr 2010 20:05:22 +0200 [thread overview]
Message-ID: <20100425180520.GD5375@nowhere> (raw)
In-Reply-To: <alpine.LFD.2.00.1004251040340.3739@i5.linux-foundation.org>
On Sun, Apr 25, 2010 at 10:49:51AM -0700, Linus Torvalds wrote:
>
>
> On Sun, 25 Apr 2010, Frederic Weisbecker wrote:
> >
> > And to prepare for that, are you ok with this scheme of:
> >
> > - .ioctl = foo,
> > + .unlocked_ioctl = bkl_ioctl,
> > + .bkl_ioctl = foo,
> >
> > ...done at the same time as the big rename patch.
>
> Seriously, why not just
>
> - .ioctl = foo,
> + .bkl_ioctl = foo
>
> because that line of
>
> + .unlocked_ioctl = bkl_ioctl,
>
> is just total and utter _garbage_. There is zero reason for it.
>
> In the long run (this is a year from now, when we rename "unlocked_ioctl"
> back to just "ioctl"), the vfs_ioctl code will just do
>
> struct file_operations *fops = filp->f_op;
>
> if (!fops)
> return -ENOTTY;
>
> if (fops->ioctl) {
> int error = fops->ioctl(...)
> if (error == -ENOIOCTLCMD)
> error = -EINVAL;
> return error;
> }
> #ifdef CONFIG_BKL
> if (fops->bkl_ioctl) {
> int error;
> lock_kernel();
> error = fops->bkl_ioctl(...)
> unlock_kernel();
> return error;
> }
> #endif
> return -ENOTTY;
>
> and we're all done.
>
> At NO point is there any advantage to that "bkl_ioctl" crap. It doesn't
> help the legacy drivers (which won't even _compile_ unless CONFIG_BKL is
> set anyway), it doesn't help the core code, it doesn't help _anybody_.
>
> Not today, not tomorrow, not with CONFIG_BKL, and not without.
>
> Linus
Well, we won't be able to get this bkl.ko but the desired effect of
having it was rather psychological than practical, as Arnd explained:
to make the dependency more visible and pull concerned people
into dropping the bkl from the drivers they are using.
But other than that, the final effect remains pretty the same so
it's not a big deal.
I'm ok with that.
Thanks for clarifying the situation!
next prev parent reply other threads:[~2010-04-25 18:05 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-04-16 3:56 [GIT PULL] Preparation for BKL'ed ioctl removal Frederic Weisbecker
2010-04-22 0:48 ` [GIT PULL v2] " Frederic Weisbecker
2010-04-24 15:25 ` Frederic Weisbecker
2010-04-24 18:36 ` Linus Torvalds
2010-04-24 18:47 ` Linus Torvalds
2010-04-24 19:54 ` Arnd Bergmann
2010-04-24 20:01 ` Linus Torvalds
2010-04-24 20:40 ` Arnd Bergmann
2010-04-24 22:15 ` Linus Torvalds
2010-04-25 17:39 ` Frederic Weisbecker
2010-04-25 17:49 ` Linus Torvalds
2010-04-25 18:05 ` Frederic Weisbecker [this message]
2010-04-26 8:30 ` Arnd Bergmann
2010-04-26 18:08 ` Linus Torvalds
2010-04-26 19:12 ` Arnd Bergmann
2010-04-26 20:36 ` Linus Torvalds
2010-04-26 22:23 ` [PATCH 0/6] Push down BKL into device drivers Arnd Bergmann
2010-04-27 9:14 ` John Kacur
2010-04-26 22:24 ` [PATCH 1/6] dvb: push down BKL into ioctl functions Arnd Bergmann
2010-04-26 22:24 ` [PATCH 2/6] scsi: " Arnd Bergmann
2010-04-26 22:24 ` [PATCH 3/6] isdn: " Arnd Bergmann
2010-04-26 22:24 ` [PATCH 4/6] staging: " Arnd Bergmann
2010-04-27 18:15 ` Frederic Weisbecker
2010-04-27 18:33 ` Greg KH
2010-04-26 22:24 ` [PATCH 5/6] v4l: always use unlocked_ioctl Arnd Bergmann
2010-04-26 22:24 ` [PATCH 6/6] drivers: push down BKL into various drivers Arnd Bergmann
2010-04-26 20:42 ` [GIT PULL v2] Preparation for BKL'ed ioctl removal David Miller
2010-04-26 22:09 ` Frederic Weisbecker
2010-04-26 22:32 ` Linus Torvalds
2010-04-26 23:04 ` Frederic Weisbecker
2010-04-26 7:25 ` Ingo Molnar
2010-04-26 11:29 ` Arnd Bergmann
2010-04-27 9:25 ` Ingo Molnar
2010-04-28 13:21 ` Frederic Weisbecker
2010-04-28 13:37 ` Ingo Molnar
2010-04-28 14:05 ` Arnd Bergmann
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=20100425180520.GD5375@nowhere \
--to=fweisbec@gmail.com \
--cc=arnd@arndb.de \
--cc=jblunck@suse.de \
--cc=jkacur@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=tglx@linutronix.de \
--cc=torvalds@linux-foundation.org \
--cc=viro@zeniv.linux.org.uk \
/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