* Linux-2.6.12
@ 2005-06-20 13:07 Richard B. Johnson
2005-06-20 13:48 ` Linux-2.6.12 Hugh Dickins
2005-06-21 0:32 ` Linux-2.6.12 Dave Jones
0 siblings, 2 replies; 17+ messages in thread
From: Richard B. Johnson @ 2005-06-20 13:07 UTC (permalink / raw)
To: Linux kernel
Attempts to run a driver that worked up to 2.6.11.9 shows that
it aparently is no longer possible to nest calls to `down`.
In other words, a procedure that has taken a semaphore can't
then take another semaphore.
down(&first_resource);
down(&second_resource);
...
...
up(&second_resource);
up(&first_resource);
The error is 'sleeping function called from invalid context....'
------------[ cut here ]------------
kernel BUG at mm/memory.c:1112!
invalid operand: 0000 [#1]
PREEMPT SMP
Modules linked in: HeavyLink parport_pc lp parport autofs4 rfcomm l2cap bluetooth nfsd exportfs lockd sunrpc e100 mii ipt_REJECT ipt_state ip_conntrack iptable_filter ip_tables floppy sg sr_mod microcode nls_cp437 msdos fat dm_mod uhci_hcd ehci_hcd video container button battery ac rtc ipv6 ext3 jbd ata_piix libata aic7xxx scsi_transport_spi sd_mod scsi_mod
CPU: 0
EIP: 0060:[<c01577f0>] Not tainted VLI
EFLAGS: 00010286 (2.6.12)
EIP is at remap_pte_range+0x70/0x80
eax: ff000000 ebx: 00034484 ecx: 0000000c edx: ddcff204
esi: 24481000 edi: 24001fe0 ebp: 00000027 esp: e02e1ea0
ds: 007b es: 007b ss: 0068
Process ftest (pid: 5159, threadinfo=e02e0000 task=eebc4550)
Stack: 24000000 e0a33240 24001fe0 24001fe0 c01578b4 ee37d800 e0a33240 24000000
24001fe0 00034003 00000027 24001fdf fffffff4 ee37d840 ee37d800 00000000
eea9ee34 dfd98000 04001fe0 f0ab6561 eea9ee34 20000000 00010003 04001fe0
Call Trace:
[<c01578b4>] remap_pfn_range+0xb4/0x100
[<f0ab6561>] dma_buffer+0x35729/0x36c50 [HeavyLink]
[<c015ade6>] get_unmapped_area+0x56/0xb0
[<c015a707>] do_mmap_pgoff+0x3a7/0x7f0
[<c017bb37>] do_ioctl+0x77/0xa0
[<c010aa8e>] sys_mmap2+0x9e/0xe0
[<c01043cb>] sysenter_past_esp+0x54/0x75
Code: d8 c1 e0 05 01 c8 8b 00 f6 c4 08 74 09 89 d8 c1 e0 0c 09 e8 89 02 81 c6 00 10 00 00 43 83 c2 04 39 fe 75 c7 31 c0 5b 5e 5f 5d c3 <0f> 0b 58 04 07 37 35 c0 eb bc 8d b6 00 00 00 00 55 57 56 53 83
<3>Debug: sleeping function called from invalid context at include/linux/rwsem.h:43
in_atomic():1, irqs_disabled():0
[<c011f417>] __might_sleep+0xa7/0xb0
[<c0122b31>] profile_task_exit+0x21/0x60
[<c0124c7a>] do_exit+0x1a/0x3a0
[<c012007b>] copy_files+0xb/0x320
[<c0105728>] die+0x188/0x190
[<c0105b00>] do_invalid_op+0x0/0xd0
[<c0105bb2>] do_invalid_op+0xb2/0xd0
[<c0104f3b>] error_code+0x4f/0x54
[<c01577f0>] remap_pte_range+0x70/0x80
[<c014c760>] prep_new_page+0x60/0x70
[<c014cd49>] buffered_rmqueue+0x119/0x270
[<c014d243>] __alloc_pages+0x2f3/0x4a0
[<c0104f3b>] error_code+0x4f/0x54
[<c01577f0>] remap_pte_range+0x70/0x80
[<c01578b4>] remap_pfn_range+0xb4/0x100
[<f0ab6561>] dma_buffer+0x35729/0x36c50 [HeavyLink]
[<c015ade6>] get_unmapped_area+0x56/0xb0
[<c015a707>] do_mmap_pgoff+0x3a7/0x7f0
[<c017bb37>] do_ioctl+0x77/0xa0
[<c010aa8e>] sys_mmap2+0x9e/0xe0
[<c01043cb>] sysenter_past_esp+0x54/0x75
note: ftest[5159] exited with preempt_count 1
scheduling while atomic: ftest/0x00000001/5159
[<c033af54>] schedule+0xcc4/0xcd0
[<c012259e>] release_console_sem+0x7e/0xc0
[<c01223cd>] vprintk+0x19d/0x250
[<c033bc7d>] rwsem_down_read_failed+0xad/0x1a0
[<c01043cb>] sysenter_past_esp+0x54/0x75
[<c0126060>] .text.lock.exit+0x27/0x87
[<c0124d27>] do_exit+0xc7/0x3a0
[<c0105728>] die+0x188/0x190
[<c0105b00>] do_invalid_op+0x0/0xd0
[<c0105bb2>] do_invalid_op+0xb2/0xd0
[<c0104f3b>] error_code+0x4f/0x54
[<c01577f0>] remap_pte_range+0x70/0x80
[<c014c760>] prep_new_page+0x60/0x70
[<c014cd49>] buffered_rmqueue+0x119/0x270
[<c014d243>] __alloc_pages+0x2f3/0x4a0
[<c0104f3b>] error_code+0x4f/0x54
[<c01577f0>] remap_pte_range+0x70/0x80
[<c01578b4>] remap_pfn_range+0xb4/0x100
[<f0ab6561>] dma_buffer+0x35729/0x36c50 [HeavyLink]
[<c015ade6>] get_unmapped_area+0x56/0xb0
[<c015a707>] do_mmap_pgoff+0x3a7/0x7f0
[<c017bb37>] do_ioctl+0x77/0xa0
[<c010aa8e>] sys_mmap2+0x9e/0xe0
[<c01043cb>] sysenter_past_esp+0x54/0x75
Is this new rule permanent or just a bug?
Cheers,
Dick Johnson
Penguin : Linux version 2.6.12 on an i686 machine (5537.79 BogoMips).
Notice : All mail here is now cached for review by Dictator Bush.
98.36% of all statistics are fiction.
^ permalink raw reply [flat|nested] 17+ messages in thread* Re: Linux-2.6.12 2005-06-20 13:07 Linux-2.6.12 Richard B. Johnson @ 2005-06-20 13:48 ` Hugh Dickins 2005-06-20 14:22 ` Linux-2.6.12 Richard B. Johnson 2005-06-21 0:32 ` Linux-2.6.12 Dave Jones 1 sibling, 1 reply; 17+ messages in thread From: Hugh Dickins @ 2005-06-20 13:48 UTC (permalink / raw) To: Richard B. Johnson; +Cc: Linux kernel Gosh, I thought from the Subject that you'd taken over from Linus, and were announcing your new release ;) On Mon, 20 Jun 2005, Richard B. Johnson wrote: > > Attempts to run a driver that worked up to 2.6.11.9 shows that > it aparently is no longer possible to nest calls to `down`. > In other words, a procedure that has taken a semaphore can't > then take another semaphore. > > down(&first_resource); > down(&second_resource); > ... > ... > up(&second_resource); > up(&first_resource); > > > The error is 'sleeping function called from invalid context....' > > ------------[ cut here ]------------ > kernel BUG at mm/memory.c:1112! No, the error is "kernel BUG at mm/memory.c:1112!", which occurs while it's holding page table lock, from which it doesn't recover very well. It's the BUG_ON(!pte_none(*pte)) in remap_pte_range. Maybe your page table is corrupt, maybe your driver is trying to remap_pfn_range on top of something already mapped. Hugh ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: Linux-2.6.12 2005-06-20 13:48 ` Linux-2.6.12 Hugh Dickins @ 2005-06-20 14:22 ` Richard B. Johnson 2005-06-20 14:41 ` Linux-2.6.12 Hugh Dickins 0 siblings, 1 reply; 17+ messages in thread From: Richard B. Johnson @ 2005-06-20 14:22 UTC (permalink / raw) To: Hugh Dickins; +Cc: Linux kernel On Mon, 20 Jun 2005, Hugh Dickins wrote: > Gosh, I thought from the Subject that you'd taken over from Linus, > and were announcing your new release ;) > > On Mon, 20 Jun 2005, Richard B. Johnson wrote: >> >> Attempts to run a driver that worked up to 2.6.11.9 shows that >> it aparently is no longer possible to nest calls to `down`. >> In other words, a procedure that has taken a semaphore can't >> then take another semaphore. >> >> down(&first_resource); >> down(&second_resource); >> ... >> ... >> up(&second_resource); >> up(&first_resource); >> >> >> The error is 'sleeping function called from invalid context....' >> >> ------------[ cut here ]------------ >> kernel BUG at mm/memory.c:1112! > > No, the error is "kernel BUG at mm/memory.c:1112!", which occurs while > it's holding page table lock, from which it doesn't recover very well. > > It's the BUG_ON(!pte_none(*pte)) in remap_pte_range. Maybe your page > table is corrupt, maybe your driver is trying to remap_pfn_range on > top of something already mapped. > > Hugh > But of course it is. There is some memory that is mapped into the driver's address space, used for DMA. It was obtained using ioremap_nocache(). This memory is then mapped into user-space when the user executes mmap(). This is how we DMA directly to user-space. Is this no longer allowed? Cheers, Dick Johnson Penguin : Linux version 2.6.12 on an i686 machine (5537.79 BogoMips). Notice : All mail here is now cached for review by Dictator Bush. 98.36% of all statistics are fiction. ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: Linux-2.6.12 2005-06-20 14:22 ` Linux-2.6.12 Richard B. Johnson @ 2005-06-20 14:41 ` Hugh Dickins 2005-06-20 15:32 ` Linux-2.6.12 Richard B. Johnson 0 siblings, 1 reply; 17+ messages in thread From: Hugh Dickins @ 2005-06-20 14:41 UTC (permalink / raw) To: Richard B. Johnson; +Cc: Linux kernel On Mon, 20 Jun 2005, Richard B. Johnson wrote: > On Mon, 20 Jun 2005, Hugh Dickins wrote: > > > > It's the BUG_ON(!pte_none(*pte)) in remap_pte_range. Maybe your page > > table is corrupt, maybe your driver is trying to remap_pfn_range on > > top of something already mapped. > > But of course it is. There is some memory that is mapped into the > driver's address space, used for DMA. It was obtained using > ioremap_nocache(). This memory is then mapped into user-space > when the user executes mmap(). This is how we DMA directly to > user-space. Is this no longer allowed? Of course that is allowed. But mapping it into userspace on top of an existing populated mapping in userspace is not and has never been allowed (well, in 2.4.0 it just generated a printk, from 2.4.10 onwards it's been a BUG). Hugh ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: Linux-2.6.12 2005-06-20 14:41 ` Linux-2.6.12 Hugh Dickins @ 2005-06-20 15:32 ` Richard B. Johnson 2005-06-20 16:02 ` Linux-2.6.12 Hugh Dickins 0 siblings, 1 reply; 17+ messages in thread From: Richard B. Johnson @ 2005-06-20 15:32 UTC (permalink / raw) To: Hugh Dickins; +Cc: Linux kernel On Mon, 20 Jun 2005, Hugh Dickins wrote: > On Mon, 20 Jun 2005, Richard B. Johnson wrote: >> On Mon, 20 Jun 2005, Hugh Dickins wrote: >>> >>> It's the BUG_ON(!pte_none(*pte)) in remap_pte_range. Maybe your page >>> table is corrupt, maybe your driver is trying to remap_pfn_range on >>> top of something already mapped. >> >> But of course it is. There is some memory that is mapped into the >> driver's address space, used for DMA. It was obtained using >> ioremap_nocache(). This memory is then mapped into user-space >> when the user executes mmap(). This is how we DMA directly to >> user-space. Is this no longer allowed? > > Of course that is allowed. But mapping it into userspace on top of > an existing populated mapping in userspace is not and has never been > allowed (well, in 2.4.0 it just generated a printk, from 2.4.10 > onwards it's been a BUG). > > Hugh > Well there is no existing 'populated mapping' whatever that means. I think the logic in the header is wrong. The driver gets contiguous DMA RAM by telling the kernel that there is less memory than there is. The driver finds out how much RAM the kernel is using by using variable mum_physpages. There is a long-time kernel bug that writes something beyond the number of num_physpages, so the memory that the drivers use for the first offset is (num_physpages * PAGE_SIZE) + PAGE_SIZE. I therefore waste a page. This address is the first location that is mapped using ioremap_nocache(). I map all the writable memory after this point up to some constant, probably 500 megabytes. These pages will be subsequently mapped into user-space when the user calls mmap(). Previous to 2.6.12, there was no problem memory-mapping and using this data-area. Now there is some artificial constraint. Cheers, Dick Johnson Penguin : Linux version 2.6.12 on an i686 machine (5537.79 BogoMips). Notice : All mail here is now cached for review by Dictator Bush. 98.36% of all statistics are fiction. ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: Linux-2.6.12 2005-06-20 15:32 ` Linux-2.6.12 Richard B. Johnson @ 2005-06-20 16:02 ` Hugh Dickins 0 siblings, 0 replies; 17+ messages in thread From: Hugh Dickins @ 2005-06-20 16:02 UTC (permalink / raw) To: Richard B. Johnson; +Cc: Linux kernel On Mon, 20 Jun 2005, Richard B. Johnson wrote: > On Mon, 20 Jun 2005, Hugh Dickins wrote: > > On Mon, 20 Jun 2005, Richard B. Johnson wrote: > > > On Mon, 20 Jun 2005, Hugh Dickins wrote: > > > > > > > > It's the BUG_ON(!pte_none(*pte)) in remap_pte_range. Maybe your > > > > page > > > > table is corrupt, maybe your driver is trying to remap_pfn_range > > > > on > > > > top of something already mapped. > > Well there is no existing 'populated mapping' whatever that means. > I think the logic in the header is wrong. Then perhaps your page table is corrupt. But my guess would be that for some reason you're mapping it into userspace twice, and the second attempt is BUGing. > The driver gets contiguous DMA RAM by telling the kernel that ... > [ snipped because which pages you are mapping is irrelevant to this problem ] > ... These pages will be subsequently mapped into > user-space when the user calls mmap(). > > Previous to 2.6.12, there was no problem memory-mapping and using > this data-area. Now there is some artificial constraint. Strange. We don't know of any new artificial constraint there. You'd better do some debugging e.g. print out what's in the pte that isn't pte_none, and what is pte you want to replace it by. Hugh ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: Linux-2.6.12 2005-06-20 13:07 Linux-2.6.12 Richard B. Johnson 2005-06-20 13:48 ` Linux-2.6.12 Hugh Dickins @ 2005-06-21 0:32 ` Dave Jones [not found] ` <Pine.LNX.4.61.0506210629110.8815@chaos.analogic.com> 1 sibling, 1 reply; 17+ messages in thread From: Dave Jones @ 2005-06-21 0:32 UTC (permalink / raw) To: Richard B. Johnson; +Cc: Linux kernel On Mon, Jun 20, 2005 at 09:07:34AM -0400, Richard B. Johnson wrote: > > Attempts to run a driver that worked up to 2.6.11.9 shows that > it aparently is no longer possible to nest calls to `down`. > In other words, a procedure that has taken a semaphore can't > then take another semaphore. > > down(&first_resource); > down(&second_resource); > ... > ... > up(&second_resource); > up(&first_resource); > > > The error is 'sleeping function called from invalid context....' > > ------------[ cut here ]------------ > kernel BUG at mm/memory.c:1112! > invalid operand: 0000 [#1] > PREEMPT SMP > Modules linked in: HeavyLink parport_pc lp parport autofs4 rfcomm l2cap > bluetooth nfsd exportfs lockd sunrpc e100 mii ipt_REJECT ipt_state > ip_conntrack iptable_filter ip_tables floppy sg sr_mod microcode nls_cp437 > msdos fat dm_mod uhci_hcd ehci_hcd video container button battery ac rtc > ipv6 ext3 jbd ata_piix libata aic7xxx scsi_transport_spi sd_mod scsi_mod > CPU: 0 > EIP: 0060:[<c01577f0>] Not tainted VLI Where is the source for this HeavyLink module ? The lack of tainting implies that it is GPL ? Oh wait, you've been asked this before[1], but chose to ignore it. Remind me again, why you expect any help from linux-kernel, when you've previously gone out of your way to encourage the subversion of the gpl-checking mechanisms in the kernel[2], and have no aparent intentions of showing the code at fault. Dave [1] http://www.ussg.iu.edu/hypermail/linux/kernel/0410.0/1690.html [2] http://www.uwsg.iu.edu/hypermail/linux/kernel/0210.2/0609.html ^ permalink raw reply [flat|nested] 17+ messages in thread
[parent not found: <Pine.LNX.4.61.0506210629110.8815@chaos.analogic.com>]
* Re: Linux-2.6.12 [not found] ` <Pine.LNX.4.61.0506210629110.8815@chaos.analogic.com> @ 2005-06-21 11:13 ` Dave Jones 2005-06-21 11:17 ` Linux-2.6.12 Richard B. Johnson 0 siblings, 1 reply; 17+ messages in thread From: Dave Jones @ 2005-06-21 11:13 UTC (permalink / raw) To: Richard B. Johnson; +Cc: Linux kernel On Tue, Jun 21, 2005 at 06:32:32AM -0400, Richard B. Johnson wrote: > Bullshit. The source is available to anybody who wants it. Great. Then please explain why you pull off this kind of crap.. (DataLink/license.c) // // This program may be distributed under the GNU Public License // version 2, as published by the Free Software Foundation, Inc., // 59 Temple Place, Suite 330 Boston, MA, 02111. // // #ifndef __KERNEL__ #define __KERNEL__ #endif #ifndef MODULE #define MODULE #endif #include <linux/module.h> #if defined(MODULE_LICENSE) MODULE_LICENSE("GPL\0 They won't allow GPL/BSD anymore!"); #endif > It's worthless without fiber-optic data-link boards that it > supports. That's not the point. I've not had the hardware for 99% of the drivers I've hacked on over the last 10 years. btw, I realise you're trying to make a point, but you don't need to send any further 900K tarballs to the list. An URL would suffice. Dave ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: Linux-2.6.12 2005-06-21 11:13 ` Linux-2.6.12 Dave Jones @ 2005-06-21 11:17 ` Richard B. Johnson 2005-06-21 11:30 ` Linux-2.6.12 Dave Jones 0 siblings, 1 reply; 17+ messages in thread From: Richard B. Johnson @ 2005-06-21 11:17 UTC (permalink / raw) To: Dave Jones; +Cc: Linux kernel On Tue, 21 Jun 2005, Dave Jones wrote: > On Tue, Jun 21, 2005 at 06:32:32AM -0400, Richard B. Johnson wrote: > > > Bullshit. The source is available to anybody who wants it. > > Great. Then please explain why you pull off this kind of crap.. > (DataLink/license.c) > Because it's true. > // > // This program may be distributed under the GNU Public License > // version 2, as published by the Free Software Foundation, Inc., > // 59 Temple Place, Suite 330 Boston, MA, 02111. > // > // > #ifndef __KERNEL__ > #define __KERNEL__ > #endif > #ifndef MODULE > #define MODULE > #endif > #include <linux/module.h> > #if defined(MODULE_LICENSE) > MODULE_LICENSE("GPL\0 They won't allow GPL/BSD anymore!"); > #endif > > > It's worthless without fiber-optic data-link boards that it > > supports. > > That's not the point. I've not had the hardware for 99% of > the drivers I've hacked on over the last 10 years. > > btw, I realise you're trying to make a point, but you don't > need to send any further 900K tarballs to the list. An URL > would suffice. > > Dave > The company doesn't allow any access from the outside world. You can get only what I can send you and I do it at my peril because the IT Nazis might catch me. > Cheers, Dick Johnson Penguin : Linux version 2.6.12 on an i686 machine (5537.79 BogoMips). Notice : All mail here is now cached for review by Dictator Bush. 98.36% of all statistics are fiction. ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: Linux-2.6.12 2005-06-21 11:17 ` Linux-2.6.12 Richard B. Johnson @ 2005-06-21 11:30 ` Dave Jones 2005-06-21 11:36 ` Linux-2.6.12 Richard B. Johnson 0 siblings, 1 reply; 17+ messages in thread From: Dave Jones @ 2005-06-21 11:30 UTC (permalink / raw) To: Richard B. Johnson; +Cc: Linux kernel On Tue, Jun 21, 2005 at 07:17:55AM -0400, Richard B. Johnson wrote: > >> Bullshit. The source is available to anybody who wants it. > >Great. Then please explain why you pull off this kind of crap.. > >(DataLink/license.c) > Because it's true. kernel/module.c:1259 disagrees with you. static inline int license_is_gpl_compatible(const char *license) { return (strcmp(license, "GPL") == 0 || strcmp(license, "GPL v2") == 0 || strcmp(license, "GPL and additional rights") == 0 || strcmp(license, "Dual BSD/GPL") == 0 || strcmp(license, "Dual MPL/GPL") == 0); } > >MODULE_LICENSE("GPL\0 They won't allow GPL/BSD anymore!"); AFAICS, this is just plain deception. I suggest reading http://marc.theaimsgroup.com/?l=linux-kernel&m=108304056922350&w=2 especially the part about talking to lawyers. Dave ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: Linux-2.6.12 2005-06-21 11:30 ` Linux-2.6.12 Dave Jones @ 2005-06-21 11:36 ` Richard B. Johnson 2005-06-21 11:55 ` Linux-2.6.12 Dave Jones 0 siblings, 1 reply; 17+ messages in thread From: Richard B. Johnson @ 2005-06-21 11:36 UTC (permalink / raw) To: Dave Jones; +Cc: Linux kernel On Tue, 21 Jun 2005, Dave Jones wrote: > On Tue, Jun 21, 2005 at 07:17:55AM -0400, Richard B. Johnson wrote: > > > >> Bullshit. The source is available to anybody who wants it. > > >Great. Then please explain why you pull off this kind of crap.. > > >(DataLink/license.c) > > Because it's true. > > kernel/module.c:1259 disagrees with you. > > static inline int license_is_gpl_compatible(const char *license) > { > return (strcmp(license, "GPL") == 0 > || strcmp(license, "GPL v2") == 0 > || strcmp(license, "GPL and additional rights") == 0 > || strcmp(license, "Dual BSD/GPL") == 0 > || strcmp(license, "Dual MPL/GPL") == 0); > } > > > >MODULE_LICENSE("GPL\0 They won't allow GPL/BSD anymore!"); > > AFAICS, this is just plain deception. I suggest reading > http://marc.theaimsgroup.com/?l=linux-kernel&m=108304056922350&w=2 > especially the part about talking to lawyers. > > Dave > At the time the work-around was inserted it was FACT. I don't spend my time rewriting license strings to accommodate the whims of the latest GPL fanatic, thank you. Cheers, Dick Johnson Penguin : Linux version 2.6.12 on an i686 machine (5537.79 BogoMips). Notice : All mail here is now cached for review by Dictator Bush. 98.36% of all statistics are fiction. ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: Linux-2.6.12 2005-06-21 11:36 ` Linux-2.6.12 Richard B. Johnson @ 2005-06-21 11:55 ` Dave Jones 2005-06-21 12:01 ` Linux-2.6.12 Richard B. Johnson 0 siblings, 1 reply; 17+ messages in thread From: Dave Jones @ 2005-06-21 11:55 UTC (permalink / raw) To: Richard B. Johnson; +Cc: Linux kernel On Tue, Jun 21, 2005 at 07:36:21AM -0400, Richard B. Johnson wrote: > On Tue, 21 Jun 2005, Dave Jones wrote: > > >On Tue, Jun 21, 2005 at 07:17:55AM -0400, Richard B. Johnson wrote: > > > >> >> Bullshit. The source is available to anybody who wants it. > >> >Great. Then please explain why you pull off this kind of crap.. > >> >(DataLink/license.c) > >> Because it's true. > > > >kernel/module.c:1259 disagrees with you. > > > >static inline int license_is_gpl_compatible(const char *license) > >{ > > return (strcmp(license, "GPL") == 0 > > || strcmp(license, "GPL v2") == 0 > > || strcmp(license, "GPL and additional rights") == 0 > > || strcmp(license, "Dual BSD/GPL") == 0 > > || strcmp(license, "Dual MPL/GPL") == 0); > >} > > > >> >MODULE_LICENSE("GPL\0 They won't allow GPL/BSD anymore!"); > > > >AFAICS, this is just plain deception. I suggest reading > >http://marc.theaimsgroup.com/?l=linux-kernel&m=108304056922350&w=2 > >especially the part about talking to lawyers. > > > > Dave > > > > At the time the work-around was inserted it was FACT. According to the RCS file in the tarball you sent, license.c was written on 2004.11.09.16.54.17; It most certainly was around back then. > I don't > spend my time rewriting license strings to accommodate the > whims of the latest GPL fanatic, thank you. So I see. So instead you subvert the checks instead. btw, text like this.. * # C O N F I D E N T I A L # * # The information contained in or upon this document is the # * # property of Analogic Corporation and is considered to be # * # proprietary and may not be used by any recipient without # * # the specific written permission of Analogic Corporation. # Just fills me with confidence about the GPL'd nature of this driver. Due to the "C O N F I D E N T I A L" nature of this driver, I've stopped reading. Pity, datalink.c was quite amusing. * Changed a lot of code to accommodate the stupid and sometimes * downright wrong changes to the Linux kernel that occurred in * Version 2.6.n. * * Yes. It's broken. I had to hard-code a bunch of stuff using * "#define" where previously the kernel provided a logical * value. Dave ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: Linux-2.6.12 2005-06-21 11:55 ` Linux-2.6.12 Dave Jones @ 2005-06-21 12:01 ` Richard B. Johnson 2005-06-21 12:15 ` Linux-2.6.12 Dave Jones 0 siblings, 1 reply; 17+ messages in thread From: Richard B. Johnson @ 2005-06-21 12:01 UTC (permalink / raw) To: Dave Jones; +Cc: Linux kernel On Tue, 21 Jun 2005, Dave Jones wrote: > On Tue, Jun 21, 2005 at 07:36:21AM -0400, Richard B. Johnson wrote: > > On Tue, 21 Jun 2005, Dave Jones wrote: > > > > >On Tue, Jun 21, 2005 at 07:17:55AM -0400, Richard B. Johnson wrote: > > > > > >> >> Bullshit. The source is available to anybody who wants it. > > >> >Great. Then please explain why you pull off this kind of crap.. > > >> >(DataLink/license.c) > > >> Because it's true. > > > > > >kernel/module.c:1259 disagrees with you. > > > > > >static inline int license_is_gpl_compatible(const char *license) > > >{ > > > return (strcmp(license, "GPL") == 0 > > > || strcmp(license, "GPL v2") == 0 > > > || strcmp(license, "GPL and additional rights") == 0 > > > || strcmp(license, "Dual BSD/GPL") == 0 > > > || strcmp(license, "Dual MPL/GPL") == 0); > > >} > > > > > >> >MODULE_LICENSE("GPL\0 They won't allow GPL/BSD anymore!"); > > > > > >AFAICS, this is just plain deception. I suggest reading > > >http://marc.theaimsgroup.com/?l=linux-kernel&m=108304056922350&w=2 > > >especially the part about talking to lawyers. > > > > > > Dave > > > > > > > At the time the work-around was inserted it was FACT. > > According to the RCS file in the tarball you sent, license.c > was written on 2004.11.09.16.54.17; > It most certainly was around back then. > > > I don't > > spend my time rewriting license strings to accommodate the > > whims of the latest GPL fanatic, thank you. > > So I see. So instead you subvert the checks instead. > > btw, text like this.. > > * # C O N F I D E N T I A L # > * # The information contained in or upon this document is the # > * # property of Analogic Corporation and is considered to be # > * # proprietary and may not be used by any recipient without # > * # the specific written permission of Analogic Corporation. # > This is USER MODE TEST code! I case you can't read, check for main(). In the real world, we write test code to verify that the driver(s) work. The test code has the company standard header as required by the company management. That's what real engineers have to do, satisfy the customers, and the management. We do not, however, have to satisfy you. > Just fills me with confidence about the GPL'd nature of this driver. > > Due to the "C O N F I D E N T I A L" nature of this driver, I've stopped > reading. Pity, datalink.c was quite amusing. > You are really sad. > * Changed a lot of code to accommodate the stupid and sometimes > * downright wrong changes to the Linux kernel that occurred in > * Version 2.6.n. > * > * Yes. It's broken. I had to hard-code a bunch of stuff using > * "#define" where previously the kernel provided a logical > * value. > > Dave > Cheers, Dick Johnson Penguin : Linux version 2.6.12 on an i686 machine (5537.79 BogoMips). Notice : All mail here is now cached for review by Dictator Bush. 98.36% of all statistics are fiction. ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: Linux-2.6.12 2005-06-21 12:01 ` Linux-2.6.12 Richard B. Johnson @ 2005-06-21 12:15 ` Dave Jones 2005-06-21 12:30 ` Linux-2.6.12 Richard B. Johnson 0 siblings, 1 reply; 17+ messages in thread From: Dave Jones @ 2005-06-21 12:15 UTC (permalink / raw) To: Richard B. Johnson; +Cc: Linux kernel On Tue, Jun 21, 2005 at 08:01:16AM -0400, Richard B. Johnson wrote: > This is USER MODE TEST code! I case you can't read, check for main(). I chose not to read, I read the license. > In the real world, we write test code to verify that the driver(s) > work. The test code has the company standard header as required by > the company management. That's what real engineers have to do, > satisfy the customers, and the management. We do not, however, > have to satisfy you. Here's the thing. When you say "This is GPL code", you kind of have to ship GPLd code. I realise this is difficult for the hard of thinking, but getting creative with MODULE_LICENSE strings isn't good enough. > >Just fills me with confidence about the GPL'd nature of this driver. > > > >Due to the "C O N F I D E N T I A L" nature of this driver, I've stopped > >reading. Pity, datalink.c was quite amusing. > > You are really sad. No Richard, I'm just respectful of the licenses of code that comes my way. If you were a "real engineer", perhaps you would do the same. Anyway, I've given up trying to educate pork, so don't feel compelled to reply, I don't expect you to achieve enlightenment any time soon. Dave ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: Linux-2.6.12 2005-06-21 12:15 ` Linux-2.6.12 Dave Jones @ 2005-06-21 12:30 ` Richard B. Johnson 2005-06-21 12:46 ` Linux-2.6.12 Dave Jones 2005-06-21 23:47 ` Linux-2.6.12 Kurt Wall 0 siblings, 2 replies; 17+ messages in thread From: Richard B. Johnson @ 2005-06-21 12:30 UTC (permalink / raw) To: Dave Jones; +Cc: Linux kernel On Tue, 21 Jun 2005, Dave Jones wrote: > On Tue, Jun 21, 2005 at 08:01:16AM -0400, Richard B. Johnson wrote: > > > This is USER MODE TEST code! I case you can't read, check for main(). > > I chose not to read, I read the license. > > > In the real world, we write test code to verify that the driver(s) > > work. The test code has the company standard header as required by > > the company management. That's what real engineers have to do, > > satisfy the customers, and the management. We do not, however, > > have to satisfy you. > > Here's the thing. When you say "This is GPL code", you kind of have > to ship GPLd code. I realise this is difficult for the hard of thinking, > but getting creative with MODULE_LICENSE strings isn't good enough. > > > >Just fills me with confidence about the GPL'd nature of this driver. > > > > > >Due to the "C O N F I D E N T I A L" nature of this driver, I've stopped > > >reading. Pity, datalink.c was quite amusing. > > > > You are really sad. > > No Richard, I'm just respectful of the licenses of code that comes my way. > If you were a "real engineer", perhaps you would do the same. > > Anyway, I've given up trying to educate pork, so don't feel compelled > to reply, I don't expect you to achieve enlightenment any time soon. > > Dave Who do you think you are that you can call me a pig? Are you so independently wealthy that you don't have to work for a living? Do you think the management at Red Hat will allow you to continue to abuse customers? I have been very conservative in taking abuse from you. I have even respected your right to an extremely obtuse and naive concept of intellectual property and how "GPL" strings somehow validate something. However, I shall not allow you to call me a pig. You will retract that statement or I will use all means at my disposal to have you terminated from your place of employment. Very Truly Yours, Richard B. Johnson Senior Project Engineer Analogic Corporation Peabody MA ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: Linux-2.6.12 2005-06-21 12:30 ` Linux-2.6.12 Richard B. Johnson @ 2005-06-21 12:46 ` Dave Jones 2005-06-21 23:47 ` Linux-2.6.12 Kurt Wall 1 sibling, 0 replies; 17+ messages in thread From: Dave Jones @ 2005-06-21 12:46 UTC (permalink / raw) To: Richard B. Johnson; +Cc: Linux kernel On Tue, Jun 21, 2005 at 08:30:03AM -0400, Richard B. Johnson wrote: > >Here's the thing. When you say "This is GPL code", you kind of have > >to ship GPLd code. I realise this is difficult for the hard of thinking, > >but getting creative with MODULE_LICENSE strings isn't good enough. > > > >> >Just fills me with confidence about the GPL'd nature of this driver. > >> > > >> >Due to the "C O N F I D E N T I A L" nature of this driver, I've stopped > >> >reading. Pity, datalink.c was quite amusing. > >> > >> You are really sad. > > > >No Richard, I'm just respectful of the licenses of code that comes my way. > >If you were a "real engineer", perhaps you would do the same. > > > >Anyway, I've given up trying to educate pork, so don't feel compelled > >to reply, I don't expect you to achieve enlightenment any time soon. > > Who do you think you are that you can call me a pig? > Are you so independently wealthy that you don't have to > work for a living? Do you think the management at > Red Hat will allow you to continue to abuse customers? Richard, please grow up. This is not a forum for Red Hat customer support, and neither is it one for puerile treats. > I have been very conservative in taking abuse from you. > I have even respected your right to an extremely obtuse > and naive concept of intellectual property and how > "GPL" strings somehow validate something. And yet you still refuse to offer any real reason for your subversion of the license. If the GPL causes you so many problems, why stick with Linux ? I understand Schillix is under a license that would probably be more acceptable to you, and sounds like it has everything you need. > However, I shall not allow you to call me a pig. You will retract that > statement or I will use all means at my disposal to have you terminated from > your place of employment. No-where in the previous mail did I make such a claim. I stated that trying to educate you was as difficult and pointless as trying educating pork. I know metaphors are hard to get your head around at first, but how old are you? 12 ? Linux-kernel is not the place for this nonsense. Please take it elsewhere. Dave ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: Linux-2.6.12 2005-06-21 12:30 ` Linux-2.6.12 Richard B. Johnson 2005-06-21 12:46 ` Linux-2.6.12 Dave Jones @ 2005-06-21 23:47 ` Kurt Wall 1 sibling, 0 replies; 17+ messages in thread From: Kurt Wall @ 2005-06-21 23:47 UTC (permalink / raw) To: Linux kernel On Tuesday 21 June 2005 08:30, Richard B. Johnson enlightened us thusly: > On Tue, 21 Jun 2005, Dave Jones wrote: [deletia] > > Anyway, I've given up trying to educate pork, so don't feel compelled > > to reply, I don't expect you to achieve enlightenment any time soon. > > > > Dave > > Who do you think you are that you can call me a pig? It's a metaphor: "Teaching <x> to do <y> is like teaching a pig to sing; it annoys the pig and you won't like the results." ^ permalink raw reply [flat|nested] 17+ messages in thread
end of thread, other threads:[~2005-06-21 23:55 UTC | newest]
Thread overview: 17+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-06-20 13:07 Linux-2.6.12 Richard B. Johnson
2005-06-20 13:48 ` Linux-2.6.12 Hugh Dickins
2005-06-20 14:22 ` Linux-2.6.12 Richard B. Johnson
2005-06-20 14:41 ` Linux-2.6.12 Hugh Dickins
2005-06-20 15:32 ` Linux-2.6.12 Richard B. Johnson
2005-06-20 16:02 ` Linux-2.6.12 Hugh Dickins
2005-06-21 0:32 ` Linux-2.6.12 Dave Jones
[not found] ` <Pine.LNX.4.61.0506210629110.8815@chaos.analogic.com>
2005-06-21 11:13 ` Linux-2.6.12 Dave Jones
2005-06-21 11:17 ` Linux-2.6.12 Richard B. Johnson
2005-06-21 11:30 ` Linux-2.6.12 Dave Jones
2005-06-21 11:36 ` Linux-2.6.12 Richard B. Johnson
2005-06-21 11:55 ` Linux-2.6.12 Dave Jones
2005-06-21 12:01 ` Linux-2.6.12 Richard B. Johnson
2005-06-21 12:15 ` Linux-2.6.12 Dave Jones
2005-06-21 12:30 ` Linux-2.6.12 Richard B. Johnson
2005-06-21 12:46 ` Linux-2.6.12 Dave Jones
2005-06-21 23:47 ` Linux-2.6.12 Kurt Wall
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox