Linux, 工作, 生活, 家人

Linux

Linus 不贊成移掉對 non-GPL module 的 support

Binary Driver Layer 這個議題好像是固定會出現在 Linux kernel mailing list.
(看起來以後一年會出現一次)
上次出現是 ODSL 提出 GKAI(General Kernel API Interface),
可以參考我之前的文章 “Linux 是不是應該有 Binary Driver Layer ?”

這次的事情發生是從 Greg Kroah-Hartman 公佈 User Space IO Driver Interface 開始的. Linus 寫了

Ok, what kind of ass-hat idiotic thing is this?

irqreturn_t uio_irq_handler(int irq, void *dev_id)
{
return IRQ_HANDLED;
}

exactly what is the point here? No way will I pull this kind of crap. You
just seem to have guaranteed a dead machine if the irq is level-triggered,
since it will keep on happening forever.

Please remove.

YOU CANNOT DO IRQ’S BY LETTING USER SPACE SORT IT OUT!

Blah Blah Blah …..
大概談到不爽了 ….. 就像大多數的政治文一樣, Greg KH 提到…

> Embedded systems integrators have enough trouble with chip vendors who
> think that exposing the device registers to userspace constitutes a
> “driver”.

Yes, and because of this, they create binary only drivers today. Lots
of them. All over the place. Doing crazy stupid crap in kernelspace.

Then there are people who do irq stuff in userspace but get it wrong.
I’ve seen that happen many times in lots of different research papers
and presentations.

Blah Blah Blah,
Andrew Morton 就講了

> So let’s come out and ban binary modules, rather than pussyfooting
> around, if that’s what we actually want to do.

Give people 12 months warning (time to work out what they’re going to do,
talk with the legal dept, etc) then make the kernel load only GPL-tagged
modules.

I think I’d favour that. It would aid those people who are trying to
obtain device specs, and who are persuading organisations to GPL their drivers.

(Whereas the patch which is proposed in this thread hinders those people)

原意大概就是像 AM 所講的, 希望大家能取得 driver specs 或是 driver 原公司
GPL 他們的 code. 但是要給 12 個月的緩衝期.

就這樣 Load non-GPL (Binary Driver) 在 2008/1/1 以後, 就無法再 load 到 load kernel 內
的文章(請見這邊), 當然, 還是 Greg KH 發的

接下來 Linus 還是寫了一篇文章反對這樣的行為, 並且拒絕這一段 code 進入 main tree.

我個人很欣賞 Linus 的態度呀. 我個人欣賞 Linus 這一段話

If people take our code, they’d better behave according to our rules. But
we shouldn’t have to behave according to the RIAA rules just because we
_listen_ to their music. Similarly, nobody should be forced to behave
according to our rules just because they _use_ our system.

There’s a big difference between “copy” and “use”. It’s exatcly the same
issue whether it’s music or code. You can’t re-distribute other peoples
music (becuase it’s _their_ copyright), but they shouldn’t put limits on
how you personally _use_ it (because it’s _your_ life).

這件事看起來一年會吵一次 :-/

*註: Greg KH 是 Linux Device Driver 的作者, 同時立場上是拒絕 Binary Kernel Driver 的存在的.

Ref.
Linus won’t ban binary kernel modules

[Tags] Linus , Linux , binary kernel module [/Tags]

發佈留言