send_IPI_mask_bitmask() (Re: 2.6.21 known regressions (v2) (for -stable team))

2007-04-28 Thread Len Brown
On Saturday 28 April 2007 12:58, Thomas Gleixner wrote:
> On Sat, 2007-04-28 at 18:27 +0200, Michal Piotrowski wrote:
> > Hi all,
> > 
> > Here is a list of known regressions reported after 2.6.21 release.
> 
> Michal, thanks for stepping up !
> 
> > Subject: 2.6.21 - BUG: at arch/i386/kernel/smp.c:177 
> > send_IPI_mask_bitmask()
> > References : http://lkml.org/lkml/2007/4/27/621
> > Submitter  : Jeff Chua <[EMAIL PROTECTED]>
> > Status : unknown
> 
> Len,
> 
> clockevents_notify() is called with the power verify information for an
> offline CPU. I can handle this in the clockevents code, but I think acpi
> is the correct place.

So the CONFIG_GENERIC_CLOCKEVENTS=y case is broken,
but the CONFIG_GENERIC_CLOCKEVENTS=n below is okay?
Not immediately clear why both cases can't fail.

Maybe Venki can explain.

-Len


static void acpi_propagate_timer_broadcast(struct acpi_processor *pr)
{
#ifdef CONFIG_GENERIC_CLOCKEVENTS
unsigned long reason;

reason = pr->power.timer_broadcast_on_state < INT_MAX ?
CLOCK_EVT_NOTIFY_BROADCAST_ON : CLOCK_EVT_NOTIFY_BROADCAST_OFF;

clockevents_notify(reason, >id);
#else
cpumask_t mask = cpumask_of_cpu(pr->id);

if (pr->power.timer_broadcast_on_state < INT_MAX)
on_each_cpu(switch_APIC_timer_to_ipi, , 1, 1);
else
on_each_cpu(switch_ipi_to_APIC_timer, , 1, 1);
#endif
}
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [patch] CFS scheduler, -v6

2007-04-28 Thread Willy Tarreau
Hi,

On Sun, Apr 29, 2007 at 03:18:32AM +0200, Kasper Sandberg wrote:
> Okay so i've tried with cfs 7 now, and the completely broken audio
> behavior is fixed.
> 
> The only things i really notice now is that gtk apps seems to redraw
> somewhat slower, and renicing X doesent seem to be able to bring it on
> par with SD or vanilla.
> 
> And smoothness just doesent match SD, it may be abit better than
> vanilla/staircase, i cant really definitively say, but SD just has the
> smoothness factor which is extremely attractive.

(...)

I don't know if Mike still has problems with SD, but there are now several
interesting reports of SD giving better feedback than CFS on real work. In
my experience, CFS seems smoother on *technical* tests, which I agree that
they do not really simulate real work.

I really think that if we merged SD in 2.6.22, at least we could focus
more on differences between it (which will become mainline) and CFS in
order to improve CFS for later inclusion when mature enough. Or maybe
only relevant parts of CFS will be merged into mainline later. But at
least, testers will not have to patch anymore to report feedback with
SD during -rc, and above all they would not compare anymore against
old-vanilla, thus reducing the number of tests.

Just my 2 cents,
Willy

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH] i386: fix voyager build

2007-04-28 Thread Jeremy Fitzhardinge
This adds an smp_ops for voyager, and hooks things up appropriately.
This is the first baby-step to making subarch runtime switchable.

Signed-off-by: Jeremy Fitzhardinge <[EMAIL PROTECTED]>
Cc: James Bottomley <[EMAIL PROTECTED]>
Cc: Eric W. Biederman <[EMAIL PROTECTED]>

---
 arch/i386/mach-voyager/voyager_smp.c |   73 --
 1 file changed, 44 insertions(+), 29 deletions(-)

===
--- a/arch/i386/mach-voyager/voyager_smp.c
+++ b/arch/i386/mach-voyager/voyager_smp.c
@@ -28,7 +28,6 @@
 #include 
 #include 
 #include 
-#include 
 
 /* TLB state -- visible externally, indexed physically */
 DEFINE_PER_CPU(struct tlb_state, cpu_tlbstate) cacheline_aligned = { 
_mm, 0 };
@@ -423,7 +422,7 @@ find_smp_config(void)
 VOYAGER_SUS_IN_CONTROL_PORT);
 
current_thread_info()->cpu = boot_cpu_id;
-   write_pda(cpu_number, boot_cpu_id);
+   x86_write_percpu(cpu_number, boot_cpu_id);
 }
 
 /*
@@ -436,7 +435,7 @@ smp_store_cpu_info(int id)
 
*c = boot_cpu_data;
 
-   identify_cpu(c);
+   identify_secondary_cpu(c);
 }
 
 /* set up the trampoline and return the physical address of the code */
@@ -460,7 +459,7 @@ start_secondary(void *unused)
/* external functions not defined in the headers */
extern void calibrate_delay(void);
 
-   secondary_cpu_init();
+   cpu_init();
 
/* OK, we're in the routine */
ack_CPI(VIC_CPU_BOOT_CPI);
@@ -580,7 +579,9 @@ do_boot_cpu(__u8 cpu)
/* init_tasks (in sched.c) is indexed logically */
stack_start.esp = (void *) idle->thread.esp;
 
-   init_gdt(cpu, idle);
+   init_gdt(cpu);
+   per_cpu(current_task, cpu) = idle;
+   early_gdt_descr.address = (unsigned long)get_cpu_gdt_table(cpu);
irq_ctx_init(cpu);
 
/* Note: Don't modify initial ss override */
@@ -884,8 +885,8 @@ smp_invalidate_interrupt(void)
 
 /* This routine is called with a physical cpu mask */
 static void
-flush_tlb_others (unsigned long cpumask, struct mm_struct *mm,
-   unsigned long va)
+voyager_flush_tlb_others (unsigned long cpumask, struct mm_struct *mm,
+ unsigned long va)
 {
int stuck = 5;
 
@@ -937,7 +938,7 @@ flush_tlb_current_task(void)
cpu_mask = cpus_addr(mm->cpu_vm_mask)[0] & ~(1 << smp_processor_id());
local_flush_tlb();
if (cpu_mask)
-   flush_tlb_others(cpu_mask, mm, FLUSH_ALL);
+   voyager_flush_tlb_others(cpu_mask, mm, FLUSH_ALL);
 
preempt_enable();
 }
@@ -959,7 +960,7 @@ flush_tlb_mm (struct mm_struct * mm)
leave_mm(smp_processor_id());
}
if (cpu_mask)
-   flush_tlb_others(cpu_mask, mm, FLUSH_ALL);
+   voyager_flush_tlb_others(cpu_mask, mm, FLUSH_ALL);
 
preempt_enable();
 }
@@ -980,7 +981,7 @@ void flush_tlb_page(struct vm_area_struc
}
 
if (cpu_mask)
-   flush_tlb_others(cpu_mask, mm, va);
+   voyager_flush_tlb_others(cpu_mask, mm, va);
 
preempt_enable();
 }
@@ -1076,12 +1077,13 @@ smp_call_function_interrupt(void)
 [RETURNS] 0 on success, else a negative status code. Does not return until
 remote CPUs are nearly ready to execute <> or are or have executed.
 */
-int
-smp_call_function (void (*func) (void *info), void *info, int retry,
-  int wait)
+static int
+voyager_smp_call_function_mask (cpumask_t cpumask,
+   void (*func) (void *info), void *info,
+   int wait)
 {
struct call_data_struct data;
-   __u32 mask = cpus_addr(cpu_online_map)[0];
+   u32 mask = cpumask.bits[0];
 
mask &= ~(1

[PATCH] i386: move common parts of smp into their own file

2007-04-28 Thread Jeremy Fitzhardinge
Several parts of kernel/smp.c and smpboot.c are generally useful for
other subarchitectures and paravirt_ops implementations, so make them
available for reuse.

Signed-off-by: Jeremy Fitzhardinge <[EMAIL PROTECTED]>
Cc: James Bottomley <[EMAIL PROTECTED]>
Cc: Eric W. Biederman <[EMAIL PROTECTED]>

---
 arch/i386/kernel/Makefile|1 
 arch/i386/kernel/smp.c   |   65 +++---
 arch/i386/kernel/smpboot.c   |   22 ---
 arch/i386/kernel/smpcommon.c |   79 ++
 include/asm-i386/processor.h |4 ++
 5 files changed, 90 insertions(+), 81 deletions(-)

===
--- a/arch/i386/kernel/Makefile
+++ b/arch/i386/kernel/Makefile
@@ -20,6 +20,7 @@ obj-$(CONFIG_MICROCODE)   += microcode.o
 obj-$(CONFIG_MICROCODE)+= microcode.o
 obj-$(CONFIG_APM)  += apm.o
 obj-$(CONFIG_X86_SMP)  += smp.o smpboot.o tsc_sync.o
+obj-$(CONFIG_SMP)  += smpcommon.o
 obj-$(CONFIG_X86_TRAMPOLINE)   += trampoline.o
 obj-$(CONFIG_X86_MPPARSE)  += mpparse.o
 obj-$(CONFIG_X86_LOCAL_APIC)   += apic.o nmi.o
===
--- a/arch/i386/kernel/smp.c
+++ b/arch/i386/kernel/smp.c
@@ -468,7 +468,7 @@ void flush_tlb_all(void)
  * it goes straight through and wastes no time serializing
  * anything. Worst case is that we lose a reschedule ...
  */
-void native_smp_send_reschedule(int cpu)
+static void native_smp_send_reschedule(int cpu)
 {
WARN_ON(cpu_is_offline(cpu));
send_IPI_mask(cpumask_of_cpu(cpu), RESCHEDULE_VECTOR);
@@ -547,9 +547,10 @@ static void __smp_call_function(void (*f
  * You must not call this function with disabled interrupts or from a
  * hardware interrupt handler or from a bottom half handler.
  */
-int native_smp_call_function_mask(cpumask_t mask,
- void (*func)(void *), void *info,
- int wait)
+static int
+native_smp_call_function_mask(cpumask_t mask,
+ void (*func)(void *), void *info,
+ int wait)
 {
struct call_data_struct data;
cpumask_t allbutself;
@@ -600,60 +601,6 @@ int native_smp_call_function_mask(cpumas
return 0;
 }
 
-/**
- * smp_call_function(): Run a function on all other CPUs.
- * @func: The function to run. This must be fast and non-blocking.
- * @info: An arbitrary pointer to pass to the function.
- * @nonatomic: Unused.
- * @wait: If true, wait (atomically) until function has completed on other 
CPUs.
- *
- * Returns 0 on success, else a negative status code.
- *
- * If @wait is true, then returns once @func has returned; otherwise
- * it returns just before the target cpu calls @func.
- *
- * You must not call this function with disabled interrupts or from a
- * hardware interrupt handler or from a bottom half handler.
- */
-int smp_call_function(void (*func) (void *info), void *info, int nonatomic,
- int wait)
-{
-   return smp_call_function_mask(cpu_online_map, func, info, wait);
-}
-EXPORT_SYMBOL(smp_call_function);
-
-/**
- * smp_call_function_single - Run a function on another CPU
- * @cpu: The target CPU.  Cannot be the calling CPU.
- * @func: The function to run. This must be fast and non-blocking.
- * @info: An arbitrary pointer to pass to the function.
- * @nonatomic: Unused.
- * @wait: If true, wait until function has completed on other CPUs.
- *
- * Returns 0 on success, else a negative status code.
- *
- * If @wait is true, then returns once @func has returned; otherwise
- * it returns just before the target cpu calls @func.
- */
-int smp_call_function_single(int cpu, void (*func) (void *info), void *info,
-int nonatomic, int wait)
-{
-   /* prevent preemption and reschedule on another processor */
-   int ret;
-   int me = get_cpu();
-   if (cpu == me) {
-   WARN_ON(1);
-   put_cpu();
-   return -EBUSY;
-   }
-
-   ret = smp_call_function_mask(cpumask_of_cpu(cpu), func, info, wait);
-
-   put_cpu();
-   return ret;
-}
-EXPORT_SYMBOL(smp_call_function_single);
-
 static void stop_this_cpu (void * dummy)
 {
local_irq_disable();
@@ -671,7 +618,7 @@ static void stop_this_cpu (void * dummy)
  * this function calls the 'stop' function on all other CPUs in the system.
  */
 
-void native_smp_send_stop(void)
+static void native_smp_send_stop(void)
 {
/* Don't deadlock on the call lock in panic */
int nolock = !spin_trylock(_lock);
===
--- a/arch/i386/kernel/smpboot.c
+++ b/arch/i386/kernel/smpboot.c
@@ -99,9 +99,6 @@ EXPORT_SYMBOL(x86_cpu_to_apicid);
 
 u8 apicid_2_node[MAX_APICID];
 
-DEFINE_PER_CPU(unsigned long, this_cpu_off);
-EXPORT_PER_CPU_SYMBOL(this_cpu_off);
-
 /*
  * Trampoline 80x86 

vmstat: use our own timer events

2007-04-28 Thread Christoph Lameter
vmstat is currently using the cache reaper to periodically bring the
statistics up to date. The cache reaper does only exists in SLUB
as a way to provide compatibility with SLAB. This patch removes
the vmstat calls from the slab allocators and provides its own
handling.

The advantage is also that we can use a different frequency for the
updates. Refreshing vm stats is a pretty fast job so we can run this
every second and stagger this by only one tick. This will lead to
some overlap in large systems. F.e a system running at 250 HZ with
1024 processors will have 4 vm updates occurring at once.

However, the vm stats update only accesses per node information.
It is only necessary to stagger the vm statistics updates per
processor in each node. Vm counter updates occurring on distant
nodes will not cause cacheline contention.

We could implement an alternate approach that runs the first processor
on each node at the second and then each of the other processor on a
node on a subsequent tick. That may be useful to keep a large amount
of the second free of timer activity. Maybe the timer folks will have
some feedback on this one?

CC: Arjan van de Ven <[EMAIL PROTECTED]>
Signed-off-by: Christoph Lameter <[EMAIL PROTECTED]>

---
 include/linux/vmstat.h |3 ---
 mm/slab.c  |1 -
 mm/slub.c  |1 -
 mm/vmstat.c|   39 +++
 4 files changed, 35 insertions(+), 9 deletions(-)

Index: slub/mm/slab.c
===
--- slub.orig/mm/slab.c 2007-04-28 19:35:19.0 -0700
+++ slub/mm/slab.c  2007-04-28 19:35:26.0 -0700
@@ -4155,7 +4155,6 @@ next:
check_irq_on();
mutex_unlock(_chain_mutex);
next_reap_node();
-   refresh_cpu_vm_stats(smp_processor_id());
 out:
/* Set up the next iteration */
schedule_delayed_work(work, round_jiffies_relative(REAPTIMEOUT_CPUC));
Index: slub/mm/slub.c
===
--- slub.orig/mm/slub.c 2007-04-28 19:35:28.0 -0700
+++ slub/mm/slub.c  2007-04-28 19:36:12.0 -0700
@@ -2514,7 +2514,6 @@ static DEFINE_PER_CPU(struct delayed_wor
 static void cache_reap(struct work_struct *unused)
 {
next_reap_node();
-   refresh_cpu_vm_stats(smp_processor_id());
schedule_delayed_work(&__get_cpu_var(reap_work),
  REAPTIMEOUT_CPUC);
 }
Index: slub/include/linux/vmstat.h
===
--- slub.orig/include/linux/vmstat.h2007-04-28 19:30:01.0 -0700
+++ slub/include/linux/vmstat.h 2007-04-28 19:36:38.0 -0700
@@ -213,8 +213,6 @@ extern void dec_zone_state(struct zone *
 extern void __dec_zone_state(struct zone *, enum zone_stat_item);
 
 void refresh_cpu_vm_stats(int);
-void refresh_vm_stats(void);
-
 #else /* CONFIG_SMP */
 
 /*
@@ -261,7 +259,6 @@ static inline void __dec_zone_page_state
 #define mod_zone_page_state __mod_zone_page_state
 
 static inline void refresh_cpu_vm_stats(int cpu) { }
-static inline void refresh_vm_stats(void) { }
 #endif
 
 #endif /* _LINUX_VMSTAT_H */
Index: slub/mm/vmstat.c
===
--- slub.orig/mm/vmstat.c   2007-04-28 19:30:01.0 -0700
+++ slub/mm/vmstat.c2007-04-28 19:36:38.0 -0700
@@ -640,6 +640,22 @@ const struct seq_operations vmstat_op = 
 #endif /* CONFIG_PROC_FS */
 
 #ifdef CONFIG_SMP
+static DEFINE_PER_CPU(struct delayed_work, vmstat_work);
+
+static void vmstat_update(struct work_struct *w)
+{
+   refresh_cpu_vm_stats(smp_processor_id());
+   schedule_delayed_work(&__get_cpu_var(vmstat_work), HZ);
+}
+
+static void __devinit start_cpu_timer(int cpu)
+{
+   struct delayed_work *vmstat_work = _cpu(vmstat_work, cpu);
+
+   INIT_DELAYED_WORK(vmstat_work, vmstat_update);
+   schedule_delayed_work_on(cpu, vmstat_work, HZ + cpu);
+}
+
 /*
  * Use the cpu notifier to insure that the thresholds are recalculated
  * when necessary.
@@ -648,11 +664,21 @@ static int __cpuinit vmstat_cpuup_callba
unsigned long action,
void *hcpu)
 {
+   long cpu = (long)hcpu;
+
switch (action) {
-   case CPU_UP_PREPARE:
-   case CPU_UP_PREPARE_FROZEN:
-   case CPU_UP_CANCELED:
-   case CPU_UP_CANCELED_FROZEN:
+   case CPU_ONLINE:
+   case CPU_ONLINE_FROZEN:
+   start_cpu_timer(cpu);
+   break;
+   case CPU_DOWN_PREPARE:
+   case CPU_DOWN_PREPARE_FROZEN:
+   cancel_rearming_delayed_work(_cpu(vmstat_work, cpu));
+   per_cpu(vmstat_work, cpu).work.func = NULL;
+   case CPU_DOWN_FAILED:
+   case CPU_DOWN_FAILED_FROZEN:
+   start_cpu_timer(cpu);
+   break;
case CPU_DEAD:
case CPU_DEAD_FROZEN:
refresh_zone_stat_thresholds();
@@ -668,8 

Re: [patches] [PATCH] [21/22] x86_64: Extend bzImage protocol for relocatable bzImage

2007-04-28 Thread Vivek Goyal
On Sat, Apr 28, 2007 at 02:46:18PM -0600, Eric W. Biederman wrote:
> "H. Peter Anvin" <[EMAIL PROTECTED]> writes:
> 
> > Eric W. Biederman wrote:
> >> 
> >> The boot protocol change is in 2.6.21 for arch/i386.
> >> 
> >> HPA looked at it a while ago.
> >> 
> >> All it does is set a flag that tells a bootloader.
> >> "Hey. I can run when loaded a non-default address, and this is what
> >>  you have to align me to."
> >> 
> >> All relocation processing happens in the kernel itself.
> >> 
> >> So it is all pretty trivial.
> >> 
> >
> > Indeed.  We *did* find some problems with Grub with the early versions,
> > those were addressed.
> 
> We found some failures that weren't root caused so we went to this
> more conservative version.
> 
> RHEL5 is actually shipping the original version of these patches if I
> recall correctly.
> 

Yes, RHEL5 is shipping original version of patches where an where and ELF
header has been added to describe bzImage.

Thanks
Vivek
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [-mm patch] make drivers/misc/thinkpad_acpi:fan_mutex static

2007-04-28 Thread Henrique de Moraes Holschuh
On Sun, 29 Apr 2007, Adrian Bunk wrote:
> Forward declarations of static functions (if required) and actual 
> variables (like fan_mutex) belong into the C file, not the header.

Very well.  I will fix the mess for 2.6.23, or, time permitting, 2.6.22.

> > Maybe I should just break the driver into multiple files in a subdirectory?
> > That would certainly make it *much* cleaner...
> 
> But even more in this case, you will not want to have actual variables 
> or prototypes of static functions in the header file.

I would not have to, in that case.  The driver would be much easier to
write, and I will need to break it in two for an alsa module anyway, might
as well break it in one subdriver per file.

-- 
  "One disk to rule them all, One disk to find them. One disk to bring
  them all and in the darkness grind them. In the Land of Redmond
  where the shadows lie." -- The Silicon Valley Tarot
  Henrique Holschuh
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [TESTING NEEDED] drivers/serial/sunzilog: Interrupt enable before ISR handler installed

2007-04-28 Thread David Miller

Your patch is extremely mangled, please try to email it to yourself
and apply it if in doubt.

Furthermore, the comment your patch adds is unnecessary.  That kind of
text belongs in the changelog comment, not the code.  The changelog is
also where you'll get credit for your change.

There is no reason to play Napoleon in the source files any more now
that we have proper source control and history all these years. :-)

Please fix all of this up and resubmit, thank you.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: Back to the future.

2007-04-28 Thread Kyle Moffett

On Apr 28, 2007, at 19:45:01, Linus Torvalds wrote:

On Sun, 29 Apr 2007, Rafael J. Wysocki wrote:
Well, I'm not sure whether or not that still would have been the  
case if we had stopped to freeze kernel threads for the  
hibernation/suspend.


Did you miss the email where Paul pointed out that Mac/PowerPC  
didn't use to do any of this? And apparently never had any issues  
with it? And probably worked more reliably several years ago than  
suspend/hibernation

does _today_?


Still works pretty reliably; the last time my PowerBook G4 was  
rebooted was 6 weeks ago.  Once every 60 suspends or so the kernel  
USB driver gets really confused and doesn't wake up the USB  
controller properly, leading to dead keyboard/mouse, but other than  
that I never have problems.  I wouldn't be surprised if I could  
comment out 90% of the "suspend" code and still have it work, the  
hardware in is is incredibly robust.  I can even swap batteries while  
it's in suspend-to-RAM, as long as I do it in less than 45 sec or so;  
I get around 6-7 days of suspend-to-RAM time on a full charge.


Cheers,
Kyle Moffett

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: Linux 2.6.21

2007-04-28 Thread David Miller
From: Adrian Bunk <[EMAIL PROTECTED]>
Date: Sun, 29 Apr 2007 01:04:16 +0200

> Bugzilla has an email interface.
> Andrew forwards bugs from Bugzilla to developers.

Therefore, bugzilla only works at all when Andrew forwards things
around by-hand.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: Linux 2.6.21

2007-04-28 Thread David Miller
From: "Markus Rechberger" <[EMAIL PROTECTED]>
Date: Sun, 29 Apr 2007 00:58:09 +0200

> On 4/29/07, Linus Torvalds <[EMAIL PROTECTED]> wrote:
> >
> >
> > On Sat, 28 Apr 2007, Adrian Bunk wrote:
> > >
> > > We are already quite good at ignoring bug reports that come through
> > > linux-kernel, and it's an _advantage_ of the kernel Bugzilla to see more
> > > than 1600 open bugs because this tells how bad we are at handling bugs.
> >
> > No, it just shows that bugzilla doesn't matter for most of the kernel.
> >
> > Don't say that "bugzilla tells how bad we are at handling bugs". It tells
> > how bad *bugzilla* is for handling bugs, nothing more.
> >
> 
> I totally disagree here, bugzilla is a very good tool.

No, Bugzilla really does suck, and I personally refuse to use it when
I have a choice.  And guess what?  You better be concerned about that
because I maintain all of the networking code :-)

It puts the onus FAR too much on the developer and not enough on the
reporter and other minions.  We have a small resource of developers,
yet lots of users, bug reporters, and minions, so something that
doesn't take advantage of the larger resource we have is going to
not function efficiently at all.  Yet that is what bugzilla does.

It's made way too much work for me every time I'm come in contact with
it, it wastes my time instead of making good use of it.

As a developer I do not want to get pounded with emails containing
state changes and other bullshit that typically comes with being
assigned to or on the CC of a bugzilla entry.  I don't want to be
reminded that a bug hasn't been touched in weeks, if the reporter
doesn't care I don't care and I'll work on things that people do care
about.  It makes me delete all the bugzilla email, even the ones with
important information in them, because it's rediculious to have to
sift through all of that crap.

People only use bugzilla because it is well understood and nothing
better has reached critical mass yet.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: Linux 2.6.21

2007-04-28 Thread Andrew Morton
On Sat, 28 Apr 2007 17:07:30 -0700 (PDT) Linus Torvalds <[EMAIL PROTECTED]> 
wrote:

> On Sat, 28 Apr 2007, Martin J. Bligh wrote:
> > 
> > Go to http://bugzilla.kernel.org. Hit query. Find the box that says
> > "Bug Changes, Only bugs changed in the last __ days". Stick 7 in it.
> > 
> > 74 bugs found.
> > 
> > Not hard to do.
> 
> And what part of the "directed" did you miss?
> 
> Do you really expect me to go there every day to look at all bugs? That's 
> nbot a bug tracker. That's just a noise-maker.
> 
> It needs to be email, not some "mouse around for 30 seconds and type 
> thing", and it needs to be *directed*. Preferably with somebody who 
> actually did some manual scanning over it and spent a few minutes just 
> looking at whether it looks like a worthy bug.
> 
> In other words: we shouldn't have all developers wasting time doing this. 

yup.

> It would be much better to have _one_ person (or a group of people) doing 
> it,

I am doing that.  It's only 5-10 a day - routing them to the relevant
culprit is very little work.  It's also very little work for said culprits
to totally ignore said routing, which is a tougher problem.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH 5/7] blackfin arch: convert most blackfin specific spi register settings to common spi framework settings

2007-04-28 Thread Bryan Wu
(mostly drop the MSTR bit as our bus handles that and convert CHPA/CPOL into 
SPI_MODE_#)

Signed-off-by: Bryan Wu <[EMAIL PROTECTED]>
---
 arch/blackfin/mach-bf533/boards/cm_bf533.c  |4 +--
 arch/blackfin/mach-bf533/boards/ezkit.c |4 +--
 arch/blackfin/mach-bf533/boards/stamp.c |   10 ++
 arch/blackfin/mach-bf537/boards/cm_bf537.c  |8 ++---
 arch/blackfin/mach-bf537/boards/generic_board.c |5 +--
 arch/blackfin/mach-bf537/boards/pnav10.c|   16 -
 arch/blackfin/mach-bf537/boards/stamp.c |   37 ++
 arch/blackfin/mach-bf561/boards/cm_bf561.c  |7 +---
 arch/blackfin/mach-bf561/boards/ezkit.c |1 -
 9 files changed, 36 insertions(+), 56 deletions(-)

diff --git a/arch/blackfin/mach-bf533/boards/cm_bf533.c 
b/arch/blackfin/mach-bf533/boards/cm_bf533.c
index 8cf7865..23a7f60 100644
--- a/arch/blackfin/mach-bf533/boards/cm_bf533.c
+++ b/arch/blackfin/mach-bf533/boards/cm_bf533.c
@@ -71,21 +71,18 @@ static struct flash_platform_data bfin_spi_flash_data = {
 
 /* SPI flash chip (m25p64) */
 static struct bfin5xx_spi_chip spi_flash_chip_info = {
-   .ctl_reg = 0x1C00,   /* with enable bit unset */
.enable_dma = 0, /* use dma transfer with this chip*/
.bits_per_word = 8,
 };
 
 /* SPI ADC chip */
 static struct bfin5xx_spi_chip spi_adc_chip_info = {
-   .ctl_reg = 0x1500,
.enable_dma = 1, /* use dma transfer with this chip*/
.bits_per_word = 16,
 };
 
 #if defined(CONFIG_SND_BLACKFIN_AD1836) || 
defined(CONFIG_SND_BLACKFIN_AD1836_MODULE)
 static struct bfin5xx_spi_chip ad1836_spi_chip_info = {
-   .ctl_reg = 0x1000,
.enable_dma = 0,
.bits_per_word = 16,
 };
@@ -100,6 +97,7 @@ static struct spi_board_info bfin_spi_board_info[] 
__initdata = {
.chip_select = 1,   /* Framework chip select. On 
STAMP537 it is SPISSEL1*/
.platform_data = _spi_flash_data,
.controller_data = _flash_chip_info,
+   .mode = SPI_MODE_3,
},{
.modalias = "bfin_spi_adc", /* Name of spi_driver for this 
device */
.max_speed_hz = 625, /* max spi clock (SCK) speed in HZ 
*/
diff --git a/arch/blackfin/mach-bf533/boards/ezkit.c 
b/arch/blackfin/mach-bf533/boards/ezkit.c
index 59970f7..747298e 100644
--- a/arch/blackfin/mach-bf533/boards/ezkit.c
+++ b/arch/blackfin/mach-bf533/boards/ezkit.c
@@ -105,7 +105,6 @@ static struct flash_platform_data bfin_spi_flash_data = {
 
 /* SPI flash chip (m25p64) */
 static struct bfin5xx_spi_chip spi_flash_chip_info = {
-   .ctl_reg = 0x1C00,   /* with enable bit unset */
.enable_dma = 0, /* use dma transfer with this chip*/
.bits_per_word = 8,
 };
@@ -114,7 +113,6 @@ static struct bfin5xx_spi_chip spi_flash_chip_info = {
 #if defined(CONFIG_SPI_ADC_BF533) || defined(CONFIG_SPI_ADC_BF533_MODULE)
 /* SPI ADC chip */
 static struct bfin5xx_spi_chip spi_adc_chip_info = {
-   .ctl_reg = 0x1000,
.enable_dma = 1, /* use dma transfer with this chip*/
.bits_per_word = 16,
 };
@@ -122,7 +120,6 @@ static struct bfin5xx_spi_chip spi_adc_chip_info = {
 
 #if defined(CONFIG_SND_BLACKFIN_AD1836) || 
defined(CONFIG_SND_BLACKFIN_AD1836_MODULE)
 static struct bfin5xx_spi_chip ad1836_spi_chip_info = {
-   .ctl_reg = 0x1000,
.enable_dma = 0,
.bits_per_word = 16,
 };
@@ -138,6 +135,7 @@ static struct spi_board_info bfin_spi_board_info[] 
__initdata = {
.chip_select = 2, /* Framework chip select. On STAMP537 it is 
SPISSEL2*/
.platform_data = _spi_flash_data,
.controller_data = _flash_chip_info,
+   .mode = SPI_MODE_3,
},
 #endif
 
diff --git a/arch/blackfin/mach-bf533/boards/stamp.c 
b/arch/blackfin/mach-bf533/boards/stamp.c
index 891118b..d7b3a5d 100644
--- a/arch/blackfin/mach-bf533/boards/stamp.c
+++ b/arch/blackfin/mach-bf533/boards/stamp.c
@@ -128,7 +128,6 @@ static struct flash_platform_data bfin_spi_flash_data = {
 
 /* SPI flash chip (m25p64) */
 static struct bfin5xx_spi_chip spi_flash_chip_info = {
-   .ctl_reg = 0x1C00,   /* with enable bit unset */
.enable_dma = 0, /* use dma transfer with this chip*/
.bits_per_word = 8,
 };
@@ -137,7 +136,6 @@ static struct bfin5xx_spi_chip spi_flash_chip_info = {
 #if defined(CONFIG_SPI_ADC_BF533) || defined(CONFIG_SPI_ADC_BF533_MODULE)
 /* SPI ADC chip */
 static struct bfin5xx_spi_chip spi_adc_chip_info = {
-   .ctl_reg = 0x1000,
.enable_dma = 1, /* use dma transfer with this chip*/
.bits_per_word = 16,
 };
@@ -145,7 +143,6 @@ static struct bfin5xx_spi_chip spi_adc_chip_info = {
 
 #if defined(CONFIG_SND_BLACKFIN_AD1836) || 
defined(CONFIG_SND_BLACKFIN_AD1836_MODULE)
 static struct bfin5xx_spi_chip ad1836_spi_chip_info = {
-   .ctl_reg = 0x1000,
.enable_dma = 0,

[PATCH 4/7] blackfin arch: need linux/tty.h header for console_init() prototype

2007-04-28 Thread Bryan Wu
Signed-off-by: Bryan Wu <[EMAIL PROTECTED]>
---
 arch/blackfin/kernel/setup.c |1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/arch/blackfin/kernel/setup.c b/arch/blackfin/kernel/setup.c
index 724fd7a..342bb8d 100644
--- a/arch/blackfin/kernel/setup.c
+++ b/arch/blackfin/kernel/setup.c
@@ -34,6 +34,7 @@
 #include 
 #include 
 #include 
+#include 
 
 #include 
 #include 
-- 
1.5.1.2
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [2.6.21-git2] sk_buff changes break Cisco VPN client

2007-04-28 Thread David Miller
From: Roland Dreier <[EMAIL PROTECTED]>
Date: Sat, 28 Apr 2007 14:05:27 -0700

> However I can suggest vpnc (http://www.unix-ag.uni-kl.de/~massar/vpnc/)
> as an alternative.  I'm not forced to use Cisco VPN access any more,
> but when I tried it, vpnc was tons better than the Cisco product.

Also, and I know this might be a COMPLETE SHOCK to some people, but we
do have a full in-kernel IPSEC stack and using it with openswan to
connect to VPNs works perfectly fine.

I use it every day.

It's quite amusing that people use a userland IPSEC implementation
via VPNC, in spite of this.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] mm/memory.c: remove warning from an uninitialized spinlock. was: Re: 2.6.21-rc7-mm2

2007-04-28 Thread Andrew Morton
On Sun, 29 Apr 2007 00:48:37 +0100 Andy Whitcroft <[EMAIL PROTECTED]> wrote:

> > +++ a/mm/memory.c
> > @@ -1455,7 +1455,7 @@ static int apply_to_pte_range(struct mm_
> > pte_t *pte;
> > int err;
> > struct page *pmd_page;
> > -   spinlock_t *ptl;
> > +   spinlock_t *ptl = ptl;  /* Suppress gcc warning */
> >  
> > pte = (mm == _mm) ?
> > pte_alloc_kernel(pmd, addr) :
> > _
> > 
> 
> Perhaps we should have some kind definition helper.
> 
> #define suppress_unused(x) x = x
> 
>   spinlock_t *suppress_unused(ptl);
> 
> Perhaps?

I think so.  It makes it clear what's happening and it allows us to change
the implementation later on if the present trick stops working in later
gcc.  It also allows people to suppress the suppression (some have
expressed concern that it can hide real bugs).

But I lost (or didn't pursue) the bunfight^Wdiscussion last time this came
around.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH 7/7] blackfin spi controller driver: update according to David Brownell's review

2007-04-28 Thread Bryan Wu
(http://lkml.org/lkml/2007/4/16/333)

Signed-off-by: Bryan Wu <[EMAIL PROTECTED]>
---
 drivers/spi/Kconfig   |   11 +-
 drivers/spi/Makefile  |4 +-
 drivers/spi/spi_bfin5xx.c |  345 -
 3 files changed, 193 insertions(+), 167 deletions(-)

diff --git a/drivers/spi/Kconfig b/drivers/spi/Kconfig
index 1ab2ed1..584ed9f 100644
--- a/drivers/spi/Kconfig
+++ b/drivers/spi/Kconfig
@@ -58,6 +58,12 @@ config SPI_ATMEL
  This selects a driver for the Atmel SPI Controller, present on
  many AT32 (AVR32) and AT91 (ARM) chips.
 
+config SPI_BFIN
+   tristate "SPI controller driver for ADI Blackfin5xx"
+   depends on SPI_MASTER && BFIN
+   help
+ This is the SPI controller master driver for Blackfin 5xx processor.
+
 config SPI_BITBANG
tristate "Bitbanging SPI master"
depends on SPI_MASTER && EXPERIMENTAL
@@ -165,11 +171,6 @@ config SPI_SPIDEV
 #
 # Add new SPI protocol masters in alphabetical order above this line
 #
-config SPI_BFIN
-   tristate "SPI controller driver for ADI Blackfin5xx"
-   depends on SPI_MASTER && BFIN
-   help
- This is the SPI controller master driver for Blackfin 5xx processor.
 
 # (slave support would go here)
 
diff --git a/drivers/spi/Makefile b/drivers/spi/Makefile
index f9dcdd1..4cc5e99 100644
--- a/drivers/spi/Makefile
+++ b/drivers/spi/Makefile
@@ -11,8 +11,9 @@ endif
 obj-$(CONFIG_SPI_MASTER)   += spi.o
 
 # SPI master controller drivers (bus)
-obj-$(CONFIG_SPI_BITBANG)  += spi_bitbang.o
 obj-$(CONFIG_SPI_ATMEL)+= atmel_spi.o
+obj-$(CONFIG_SPI_BFIN) += spi_bfin5xx.o
+obj-$(CONFIG_SPI_BITBANG)  += spi_bitbang.o
 obj-$(CONFIG_SPI_BUTTERFLY)+= spi_butterfly.o
 obj-$(CONFIG_SPI_IMX)  += spi_imx.o
 obj-$(CONFIG_SPI_PXA2XX)   += pxa2xx_spi.o
@@ -20,7 +21,6 @@ obj-$(CONFIG_SPI_OMAP_UWIRE)  += omap_uwire.o
 obj-$(CONFIG_SPI_MPC83xx)  += spi_mpc83xx.o
 obj-$(CONFIG_SPI_S3C24XX_GPIO) += spi_s3c24xx_gpio.o
 obj-$(CONFIG_SPI_S3C24XX)  += spi_s3c24xx.o
-obj-$(CONFIG_SPI_BFIN) += spi_bfin5xx.o
 #  ... add above this line ...
 
 # SPI protocol drivers (device/link on bus)
diff --git a/drivers/spi/spi_bfin5xx.c b/drivers/spi/spi_bfin5xx.c
index ab6781a..2bbbe50 100644
--- a/drivers/spi/spi_bfin5xx.c
+++ b/drivers/spi/spi_bfin5xx.c
@@ -76,7 +76,6 @@ DEFINE_SPI_REG(SHAW, 0x18)
 #define QUEUE_RUNNING 0
 #define QUEUE_STOPPED 1
 int dma_requested;
-char chip_select_flag;
 
 struct driver_data {
/* Driver model hookup */
@@ -175,8 +174,9 @@ static int flush(struct driver_data *drv_data)
unsigned long limit = loops_per_jiffy << 1;
 
/* wait for stop and clear stat */
-   do {
-   } while (!(read_STAT() & BIT_STAT_SPIF) && limit--);
+   while (!(read_STAT() & BIT_STAT_SPIF) && limit--)
+   continue;
+   
write_STAT(BIT_STAT_CLR);
 
return limit;
@@ -192,42 +192,50 @@ static void restore_state(struct driver_data *drv_data)
bfin_spi_disable(drv_data);
pr_debug("restoring spi ctl state\n");
 
-#if defined(CONFIG_BF534)||defined(CONFIG_BF536)||defined(CONFIG_BF537)
-   if (chip->chip_select_num == 1) {
-   pr_debug("set for chip select 1\n");
+#if defined(CONFIG_BF534) || defined(CONFIG_BF536) || defined(CONFIG_BF537)
+   pr_debug("chip select number is %d\n", chip->chip_select_num);
+   
+   switch (chip->chip_select_num) {
+   case 1:
bfin_write_PORTF_FER(bfin_read_PORTF_FER() | 0x3c00);
SSYNC();
-
-   } else if (chip->chip_select_num == 2 || chip->chip_select_num == 3) {
-   pr_debug("set for chip select 2\n");
+   break;
+   
+   case 2:
+   case 3:
bfin_write_PORT_MUX(bfin_read_PORT_MUX() | PJSE_SPI);
SSYNC();
bfin_write_PORTF_FER(bfin_read_PORTF_FER() | 0x3800);
SSYNC();
-
-   } else if (chip->chip_select_num == 4) {
+   break;
+   
+   case 4:
bfin_write_PORT_MUX(bfin_read_PORT_MUX() | PFS4E_SPI);
SSYNC();
bfin_write_PORTF_FER(bfin_read_PORTF_FER() | 0x3840);
SSYNC();
-
-   } else if (chip->chip_select_num == 5) {
+   break;
+   
+   case 5:
bfin_write_PORT_MUX(bfin_read_PORT_MUX() | PFS5E_SPI);
SSYNC();
bfin_write_PORTF_FER(bfin_read_PORTF_FER() | 0x3820);
SSYNC();
+   break;
 
-   } else if (chip->chip_select_num == 6) {
+   case 6:
bfin_write_PORT_MUX(bfin_read_PORT_MUX() | PFS6E_SPI);
SSYNC();
bfin_write_PORTF_FER(bfin_read_PORTF_FER() | 0x3810);
SSYNC();
-
-   } else if (chip->chip_select_num == 

[PATCH 6/7] blackfin serial core driver: UART1 should depend on BF534/BF536/BF537, remove experimental marking from on-chip serial core driver and make options less wordy.

2007-04-28 Thread Bryan Wu
Signed-off-by: Bryan Wu <[EMAIL PROTECTED]>
---
 drivers/serial/Kconfig |   12 ++--
 1 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/drivers/serial/Kconfig b/drivers/serial/Kconfig
index 3484834..e8efe93 100644
--- a/drivers/serial/Kconfig
+++ b/drivers/serial/Kconfig
@@ -513,8 +513,8 @@ config SERIAL_SA1100_CONSOLE
  kernel at boot time.)
 
 config SERIAL_BFIN
-   tristate "Blackfin serial port support (EXPERIMENTAL)"
-   depends on BFIN && EXPERIMENTAL
+   tristate "Blackfin serial port support"
+   depends on BFIN
select SERIAL_CORE
select SERIAL_BFIN_UART0 if (BF531 || BF532 || BF533 || BF561)
help
@@ -529,7 +529,7 @@ config SERIAL_BFIN_CONSOLE
select SERIAL_CORE_CONSOLE
 
 choice
-   prompt  "Blackfin UART Mode"
+   prompt "UART Mode"
depends on SERIAL_BFIN
default SERIAL_BFIN_DMA
help
@@ -537,14 +537,14 @@ choice
  of CPUs
 
 config SERIAL_BFIN_DMA
-   bool "Blackfin UART DMA mode"
+   bool "DMA mode"
depends on DMA_UNCACHED_1M
help
  This driver works under DMA mode. If this option is selected, the
  blackfin simple dma driver is also enabled.
 
 config SERIAL_BFIN_PIO
-   bool "Blackfin UART PIO mode"
+   bool "PIO mode"
help
  This driver works under PIO mode.
 
@@ -581,7 +581,7 @@ config UART0_RTS_PIN
 
 config SERIAL_BFIN_UART1
bool "Enable UART1"
-   depends on SERIAL_BFIN && BF537
+   depends on SERIAL_BFIN && (BF534 || BF536 || BF537)
help
  Enable UART1
 
-- 
1.5.1.2
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH 2/7] blackfin arch: fix bug refuse to boot if rootfs image is not attached when MTD_UCLINUX is selected

2007-04-28 Thread Bryan Wu
Signed-off-by: Bryan Wu <[EMAIL PROTECTED]>
---
 arch/blackfin/kernel/setup.c |5 +
 1 files changed, 5 insertions(+), 0 deletions(-)

diff --git a/arch/blackfin/kernel/setup.c b/arch/blackfin/kernel/setup.c
index 76e1f10..6a2190f 100644
--- a/arch/blackfin/kernel/setup.c
+++ b/arch/blackfin/kernel/setup.c
@@ -293,6 +293,11 @@ void __init setup_arch(char **cmdline_p)
 
memory_end -= mtd_size;
 
+   if (mtd_size == 0) {
+   console_init();
+   panic("Don't boot kernel without rootfs attached.\n");
+   }
+
/* Relocate MTD image to the top of memory after the uncached memory 
area */
dma_memcpy((char *)memory_end, __bss_stop, mtd_size);
 
-- 
1.5.1.2
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH 3/7] blackfin arch: move revid function into global headers as inline functions

2007-04-28 Thread Bryan Wu
Signed-off-by: Bryan Wu <[EMAIL PROTECTED]>
---
 arch/blackfin/kernel/setup.c|   72 +++---
 include/asm-blackfin/mach-bf533/bf533.h |2 +-
 include/asm-blackfin/mach-bf537/bf537.h |2 +-
 include/asm-blackfin/mach-bf561/bf561.h |2 +-
 include/asm-blackfin/processor.h|   25 +++
 5 files changed, 45 insertions(+), 58 deletions(-)

diff --git a/arch/blackfin/kernel/setup.c b/arch/blackfin/kernel/setup.c
index 6a2190f..724fd7a 100644
--- a/arch/blackfin/kernel/setup.c
+++ b/arch/blackfin/kernel/setup.c
@@ -121,34 +121,6 @@ void bf53x_relocate_l1_mem(void)
 
 }
 
-/* Get the DSP Revision ID */
-static u_int get_dsp_rev_id(void)
-{
-   u_int id;
-   id = bfin_read_DSPID() & 0x;
-#if defined(CONFIG_BF561)
-   id>>=8;
-#endif
-   return id;
-}
-
-static inline u_int get_compiled_rev_id(void)
-{
-#if defined(CONFIG_BF_REV_0_0)
-   return 0;
-#elif defined(CONFIG_BF_REV_0_1)
-   return 1;
-#elif defined(CONFIG_BF_REV_0_2)
-   return 2;
-#elif defined(CONFIG_BF_REV_0_3)
-   return 3;
-#elif defined(CONFIG_BF_REV_0_4)
-   return 4;
-#elif defined(CONFIG_BF_REV_0_5)
-   return 5;
-#endif
-}
-
 /*
  * Initial parsing of the command line.  Currently, we support:
  *  - Controlling the linux memory size: mem=xxx[KMG]
@@ -196,7 +168,7 @@ static __init void parse_cmdline_early(char *cmdline_p)
 
 void __init setup_arch(char **cmdline_p)
 {
-   int bootmap_size, id;
+   int bootmap_size;
unsigned long l1_length, sclk, cclk;
 #ifdef CONFIG_MTD_UCLINUX
unsigned long mtd_phys = 0;
@@ -329,30 +301,23 @@ void __init setup_arch(char **cmdline_p)
init_mm.brk = (unsigned long)0;
 
init_leds();
-   id = get_dsp_rev_id();
-
-   printk(KERN_INFO
-  "Blackfin support (C) 2004-2006 Analog Devices, Inc.\n");
-   printk(KERN_INFO "Compiled for ADSP-%s Rev. 0.%d\n", CPU,
-  get_compiled_rev_id());
-   if (id != get_compiled_rev_id())
-   printk(KERN_ERR
-  "Warning: Compiled for Rev %d, but running on Rev %d\n",
-   get_compiled_rev_id(), id );
-   if (id < SUPPORTED_DSPID)
-   printk(KERN_ERR
-  "Warning: Unsupported Chip Revision ADSP-%s Rev. 0.%d 
detected\n",
-  CPU, id);
-   printk(KERN_INFO
-  "Blackfin uClinux support by http://blackfin.uclinux.org/\n;);
+
+   printk(KERN_INFO "Blackfin support (C) 2004-2007 Analog Devices, 
Inc.\n");
+   printk(KERN_INFO "Compiled for ADSP-%s Rev 0.%d\n", CPU, 
bfin_compiled_revid());
+   if (bfin_revid() != bfin_compiled_revid())
+   printk(KERN_ERR "Warning: Compiled for Rev %d, but running on 
Rev %d\n",
+  bfin_compiled_revid(), bfin_revid());
+   if (bfin_revid() < SUPPORTED_REVID)
+   printk(KERN_ERR "Warning: Unsupported Chip Revision ADSP-%s Rev 
0.%d detected\n",
+  CPU, bfin_revid());
+   printk(KERN_INFO "Blackfin Linux support by 
http://blackfin.uclinux.org/\n;);
 
printk(KERN_INFO "Processor Speed: %lu MHz core clock and %lu Mhz 
System Clock\n",
   cclk / 100,  sclk / 100);
 
 #if defined(ANOMALY_05000273)
if ((cclk >> 1) <= sclk)
-   printk(KERN_ERR
-  "\n\n\nANOMALY_05000273: CCLK must be >= 2*SCLK 
!!!\n\n\n");
+   printk("\n\n\nANOMALY_05000273: CCLK must be >= 2*SCLK 
!!!\n\n\n");
 #endif
 
printk(KERN_INFO "Board Memory: %ldMB\n", physical_mem_end >> 20);
@@ -778,21 +743,19 @@ EXPORT_SYMBOL(get_sclk);
 static int show_cpuinfo(struct seq_file *m, void *v)
 {
char *cpu, *mmu, *fpu, *name;
-#ifdef CONFIG_BLKFIN_CACHE_LOCK
-   int lock;
-#endif
+   uint32_t revid;
 
u_long cclk = 0, sclk = 0;
-   u_int id, dcache_size = 0, dsup_banks = 0;
+   u_int dcache_size = 0, dsup_banks = 0;
 
cpu = CPU;
mmu = "none";
fpu = "none";
+   revid = bfin_revid();
name = bfin_board_name;
 
cclk = get_cclk();
sclk = get_sclk();
-   id = get_dsp_rev_id();
 
seq_printf(m, "CPU:\t\tADSP-%s Rev. 0.%d\n"
   "MMU:\t\t%s\n"
@@ -801,7 +764,7 @@ static int show_cpuinfo(struct seq_file *m, void *v)
   "System Clock:\t%9lu Hz\n"
   "BogoMips:\t%lu.%02lu\n"
   "Calibration:\t%lu loops\n",
-  cpu, id, mmu, fpu,
+  cpu, revid, mmu, fpu,
   cclk,
   sclk,
   (loops_per_jiffy * HZ) / 50,
@@ -856,8 +819,7 @@ static int show_cpuinfo(struct seq_file *m, void *v)
   dsup_banks, BLKFIN_DSUBBANKS, BLKFIN_DWAYS,
   BLKFIN_DLINES);
 #ifdef CONFIG_BLKFIN_CACHE_LOCK
-   lock = read_iloc();
-   switch (lock) {
+   switch (read_iloc()) {
case WAY0_L:
   

[PATCH 0/7] blackfin arch and driver patches update against 2.6.21-rc7-mm2

2007-04-28 Thread Bryan Wu

* Some bugfixes in blackfin arch patch, serial core patch
* Update blackfin spi controller driver patch accoding to David Brownell's 
review
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH 1/7] blackfin arch: fix coding style in ints-priority-sc C file

2007-04-28 Thread Bryan Wu
Signed-off-by: Bryan Wu <[EMAIL PROTECTED]>
---
 arch/blackfin/mach-common/ints-priority-sc.c |   77 +++--
 1 files changed, 34 insertions(+), 43 deletions(-)

diff --git a/arch/blackfin/mach-common/ints-priority-sc.c 
b/arch/blackfin/mach-common/ints-priority-sc.c
index c30726b..34b6228 100644
--- a/arch/blackfin/mach-common/ints-priority-sc.c
+++ b/arch/blackfin/mach-common/ints-priority-sc.c
@@ -329,11 +329,9 @@ static unsigned int bfin_gpio_irq_startup(unsigned int irq)
u16 gpionr = irq - IRQ_PF0;
 
if (!(gpio_enabled[gpio_bank(gpionr)] & gpio_bit(gpionr))) {
-
ret = gpio_request(gpionr, NULL);
-   if(ret)
+   if (ret)
return ret;
-
}
 
gpio_enabled[gpio_bank(gpionr)] |= gpio_bit(gpionr);
@@ -355,55 +353,49 @@ static int bfin_gpio_irq_type(unsigned int irq, unsigned 
int type)
unsigned int ret;
u16 gpionr = irq - IRQ_PF0;
 
+   if (type == IRQ_TYPE_PROBE) {
+   /* only probe unenabled GPIO interrupt lines */
+   if (gpio_enabled[gpio_bank(gpionr)] & gpio_bit(gpionr))
+   return 0;
+   type = IRQ_TYPE_EDGE_RISING | IRQ_TYPE_EDGE_FALLING;
+   }
 
-   if (type == IRQ_TYPE_PROBE) {
-   /* only probe unenabled GPIO interrupt lines */
-   if (gpio_enabled[gpio_bank(gpionr)] & gpio_bit(gpionr))
-   return 0;
-   type = IRQ_TYPE_EDGE_RISING | IRQ_TYPE_EDGE_FALLING;
-
-   }
-
-   if (type & (IRQ_TYPE_EDGE_RISING | IRQ_TYPE_EDGE_FALLING |
-   IRQ_TYPE_LEVEL_HIGH | IRQ_TYPE_LEVEL_LOW)) {
-
+   if (type & (IRQ_TYPE_EDGE_RISING | IRQ_TYPE_EDGE_FALLING |
+   IRQ_TYPE_LEVEL_HIGH | IRQ_TYPE_LEVEL_LOW))
+   {
if (!(gpio_enabled[gpio_bank(gpionr)] & gpio_bit(gpionr))) {
-
ret = gpio_request(gpionr, NULL);
-   if(ret)
+   if (ret)
return ret;
-
-   }
-
-   gpio_enabled[gpio_bank(gpionr)] |= gpio_bit(gpionr);
-   } else {
-   gpio_enabled[gpio_bank(gpionr)] &= ~gpio_bit(gpionr);
-   return 0;
}
 
+   gpio_enabled[gpio_bank(gpionr)] |= gpio_bit(gpionr);
+   } else {
+   gpio_enabled[gpio_bank(gpionr)] &= ~gpio_bit(gpionr);
+   return 0;
+   }
 
-   set_gpio_dir(gpionr, 0);
-   set_gpio_inen(gpionr, 1);
-
+   set_gpio_dir(gpionr, 0);
+   set_gpio_inen(gpionr, 1);
 
-   if (type & (IRQ_TYPE_EDGE_RISING | IRQ_TYPE_EDGE_FALLING)) {
-   gpio_edge_triggered[gpio_bank(gpionr)] |= 
gpio_bit(gpionr);
-   set_gpio_edge(gpionr, 1);
-   } else {
-   set_gpio_edge(gpionr, 0);
-   gpio_edge_triggered[gpio_bank(gpionr)] &= 
~gpio_bit(gpionr);
-   }
+   if (type & (IRQ_TYPE_EDGE_RISING | IRQ_TYPE_EDGE_FALLING)) {
+   gpio_edge_triggered[gpio_bank(gpionr)] |= gpio_bit(gpionr);
+   set_gpio_edge(gpionr, 1);
+   } else {
+   set_gpio_edge(gpionr, 0);
+   gpio_edge_triggered[gpio_bank(gpionr)] &= ~gpio_bit(gpionr);
+   }
 
-   if ((type & (IRQ_TYPE_EDGE_RISING | IRQ_TYPE_EDGE_FALLING))
-   == (IRQ_TYPE_EDGE_RISING | IRQ_TYPE_EDGE_FALLING))
-   set_gpio_both(gpionr, 1);
-   else
-   set_gpio_both(gpionr, 0);
+   if ((type & (IRQ_TYPE_EDGE_RISING | IRQ_TYPE_EDGE_FALLING))
+   == (IRQ_TYPE_EDGE_RISING | IRQ_TYPE_EDGE_FALLING))
+   set_gpio_both(gpionr, 1);
+   else
+   set_gpio_both(gpionr, 0);
 
-   if ((type & (IRQ_TYPE_EDGE_FALLING | IRQ_TYPE_LEVEL_LOW)))
-   set_gpio_polar(gpionr, 1);  /* low or falling edge 
denoted by one */
-   else
-   set_gpio_polar(gpionr, 0);  /* high or rising edge 
denoted by zero */
+   if ((type & (IRQ_TYPE_EDGE_FALLING | IRQ_TYPE_LEVEL_LOW)))
+   set_gpio_polar(gpionr, 1);  /* low or falling edge denoted 
by one */
+   else
+   set_gpio_polar(gpionr, 0);  /* high or rising edge denoted 
by zero */
 
SSYNC();
 
@@ -416,7 +408,6 @@ static int bfin_gpio_irq_type(unsigned int irq, unsigned 
int type)
 }
 
 
-
 static struct irq_chip bfin_gpio_irqchip = {
.ack = bfin_gpio_ack_irq,
.mask = bfin_gpio_mask_irq,
-- 
1.5.1.2
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  

Re: [ckrm-tech] [PATCH 1/9] Containers (V9): Basic container framework

2007-04-28 Thread Paul Jackson
+static ssize_t container_read_uint(struct container *cont, struct cftype *cft,
+  struct file *file,
+  char __user *buf, size_t nbytes,
+  loff_t *ppos)
+{
+   char tmp[64];
+   u64 val = cft->read_uint(cont, cft);
+   int len = sprintf(tmp, "%llu", val);


This sprintf is giving me the following compiler warnings:

kernel/container.c: In function 'container_read_uint':
kernel/container.c:1025: warning: format '%llu' expects type 'long long 
unsigned int', but argument 3 has type 'u64'
kernel/container.c:1025: warning: format '%llu' expects type 'long long 
unsigned int', but argument 3 has type 'u64'  

-- 
  I won't rest till it's the best ...
  Programmer, Linux Scalability
  Paul Jackson <[EMAIL PROTECTED]> 1.925.600.0401
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: Linux 2.6.21

2007-04-28 Thread Andrew Morton
On Sun, 29 Apr 2007 08:11:30 +1000 Neil Brown <[EMAIL PROTECTED]> wrote:

> On Saturday April 28, [EMAIL PROTECTED] wrote:
> > 
> > Yes, human involvement from someone with half a brain would be better.
> > Andrew does a lot of that. Not a particularly good use of talent really.
> > but still.
> 
> I think more than half a brain is needed to do this well.  You need a
> reasonable understanding of how all the bits of the kernel work
> together so that you have a good chance of sending the bug in the right
> direction.  You need a good understanding of the kernel community and
> various sub communities so that you know who might be both able and
> willing to deal with the bug.  And it wouldn't hurt to have a good
> over-view of the current 'hot' areas of the kernel so you know if it
> is really worth suggesting "try with the latest -mm" or not.
> And you need good people skills.
> 
> So I think you really need a lot of up-to-date knowledge to do this
> well.  Because of Andrew's position as a funnel, he has a lot of that
> knowledge.

yup

>  It would be really nice if he had some help though.

Amen, Brother Neil.

>  And I
> really think that would mean finding someone in the community who
> would rather be coding (and currently are) and convincing them that
> there is a higher calling for them.  Finding someone out side or on
> the edge of the community is less likely to be effective.

http://www.google.com/support/jobs/bin/answer.py?answer=53317

This is a fully funded regular full-time position @google's Mountain View
HQ, sitting within nagging range of myself, doing precisely what you
describe.

Unfortunately the recruiting has been a bit tricky - this is not a typical
job and it's a funny mixture of bureaucracy/politics/social engineering
and programming.  People who are skilled in both areas, are, ah, uncommon.
But it will happen eventually.

Meanwhile I

- ensure that all bugzilla reports are routed to the relevant maintainer

- ensure that all those who reported bugs via email are later asked to
  raise bugzilla reports if it didn't get fixed (but I only monitor one list!)

- continue to file away all the real-looking bugzillas with the intention
  of generating aggregated reports, but you know how it is.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [-mm patch] make drivers/misc/thinkpad_acpi:fan_mutex static

2007-04-28 Thread Adrian Bunk
On Sat, Apr 28, 2007 at 04:58:21PM -0300, Henrique de Moraes Holschuh wrote:
> On Sat, 28 Apr 2007, Adrian Bunk wrote:
>...
> > BTW: Prototypes for static versions and static variables in a header
> >  file are really wrong, but the mess is bigger than what I'm
> >  willing to clean up...
> 
> It is a private header file, only one file uses it and it is not supposed to
> be used by any other file ever, either.  I can certainly do a cleaning up
> and a lot can be removed (at least 70% of it), but the driver is not linear
> (it is some infrastructure and various subdrivers) and there is a bunch of
> stuff that will need forward declarations regardless.

Forward declarations of static functions (if required) and actual 
variables (like fan_mutex) belong into the C file, not the header.

> Maybe I should just break the driver into multiple files in a subdirectory?
> That would certainly make it *much* cleaner...

But even more in this case, you will not want to have actual variables 
or prototypes of static functions in the header file.

> > --- linux-2.6.21-rc7-mm2/drivers/misc/thinkpad_acpi.h.old   2007-04-27 
> > 00:55:58.0 +0200
> > +++ linux-2.6.21-rc7-mm2/drivers/misc/thinkpad_acpi.h   2007-04-28 
> > 01:32:54.0 +0200
> > @@ -382,7 +382,7 @@
> >  static u8 fan_control_desired_level;
> >  static int fan_watchdog_maxinterval;
> >  
> > -struct mutex fan_mutex;
> > +static struct mutex fan_mutex;
> >  
> >  static acpi_handle fans_handle, gfan_handle, sfan_handle;
> >  
>   Henrique Holschuh

cu
Adrian

-- 

   "Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
   "Only a promise," Lao Er said.
   Pearl S. Buck - Dragon Seed

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH] ibmtr_cs: fix hang on eject

2007-04-28 Thread Paul Walmsley


Sent this patch a few weeks ago to the addresses listed for Token Ring 
maintainers.  No response, and the linux-tr@ address bounced.  Resent 
here in case someone wants to pick it up.  Perhaps a MAINTAINERS edit 
might be in order also.



- Paul


Ejecting a PCMCIA IBM Token Ring card that has not had its dev->open() 
called will reliably trigger an uninitialized spinlock oops when spinlock 
debugging is enabled. The system then hangs, occasionally softlockup 
oopsing.  Apparently ibmtr.c:tok_interrupt() doesn't expect to be called 
before tok_open(), but tok_interrupt() gets called anyway when the card is 
ejected.  So, set an already-existing flag which causes tok_interrupt() to 
bail out early upon card ejection. Tested by inserting and removing the 
PCMCIA card several times.


Patch against 2.6.21-rc6.


Signed-off-by: Paul Walmsley <[EMAIL PROTECTED]>

---
 dev/drivers/net/pcmcia/ibmtr_cs.c |   12 
 1 file changed, 8 insertions(+), 4 deletions(-)

Index: linux/dev/drivers/net/pcmcia/ibmtr_cs.c
===
--- linux.orig/dev/drivers/net/pcmcia/ibmtr_cs.c
+++ linux/dev/drivers/net/pcmcia/ibmtr_cs.c
@@ -189,16 +189,20 @@ static void ibmtr_detach(struct pcmcia_d
 {
 struct ibmtr_dev_t *info = link->priv;
 struct net_device *dev = info->dev;
+struct tok_info *ti = netdev_priv(dev);

 DEBUG(0, "ibmtr_detach(0x%p)\n", link);
+
+/*
+ * When the card removal interrupt hits tok_interrupt(),
+ * bail out early, so we don't crash the machine
+ */
+ti->sram_phys |= 1;

 if (link->dev_node)
unregister_netdev(dev);

-{
-   struct tok_info *ti = netdev_priv(dev);
-   del_timer_sync(&(ti->tr_timer));
-}
+del_timer_sync(&(ti->tr_timer));

 ibmtr_release(link);

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] use mutex instead of semaphore in Sony PI driver

2007-04-28 Thread Len Brown
On Tuesday 24 April 2007 20:22, Mattia Dongili wrote:
> Acked-by: Mattia Dongili <[EMAIL PROTECTED]>

applied.
thanks,
-Len
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [-mm patch] make drivers/misc/thinkpad_acpi:fan_mutex static

2007-04-28 Thread Len Brown

> > This patch makes the needlessly global fan_mutex static.

applied.
thanks,
-Len
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] crypto: Remove pointless padlock module

2007-04-28 Thread Randy Dunlap

Simon Arlott wrote:

When this is compiled in it is run too early to do anything useful:
[6.052000] padlock: No VIA PadLock drivers have been loaded.
[6.052000] padlock: Using VIA PadLock ACE for AES algorithm.
[6.052000] padlock: Using VIA PadLock ACE for SHA1/SHA256 algorithms.

When it's a module it isn't doing anything special, the same 
functionality can be provided in userspace by "probeall padlock 
padlock-aes padlock-sha" in modules.conf if it is required.


Signed-off-by: Simon Arlott <[EMAIL PROTECTED]>
Cc: Herbert Xu <[EMAIL PROTECTED]>
Cc: Michal Ludvig <[EMAIL PROTECTED]>
---
drivers/crypto/Kconfig   |   16 ++--
drivers/crypto/Makefile  |1 -
drivers/crypto/padlock.c |   58 
--

3 files changed, 3 insertions(+), 72 deletions(-)
delete mode 100644 drivers/crypto/padlock.c

diff --git a/drivers/crypto/Kconfig b/drivers/crypto/Kconfig
index ff8c4be..f85cecc 100644
--- a/drivers/crypto/Kconfig
+++ b/drivers/crypto/Kconfig
@@ -1,10 +1,10 @@
menu "Hardware crypto devices"

config CRYPTO_DEV_PADLOCK
-tristate "Support for VIA PadLock ACE"
-depends on X86_32
+bool "Support for VIA PadLock ACE"
+depends on CRYPTO && X86_32


All of drivers/crypto/Kconfig already depends on CRYPTO, so just
depends on X86_32
should be enough.


+default y
select CRYPTO_ALGAPI
-default m
help
  Some VIA processors come with an integrated crypto engine
  (so called VIA PadLock ACE, Advanced Cryptography Engine)



--
~Randy
*** Remember to use Documentation/SubmitChecklist when testing your code ***
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH 0/9] Containers (V9): Generic Process Containers

2007-04-28 Thread Paul Jackson
> - decide whether "Containers" is an acceptable name for the system
> given its usage by some other development groups, or whether something
> else (ProcessSets? ResourceGroups? TaskGroups?) would be better

I place in nomination:

tasksets

However this would conflict with the taskset utility in Robert Loves
schedutils package.  The 'taskset' command "is used  to set or retrieve
the CPU affinity of a running process given its PID or to launch a new
COMMAND with a given CPU affinity."

The various alternatives you listed all have the advantage of stating
both that we have a container/group/set/collection/... of something,
and -what- that something might be - process/resource/task/...

"tasksets" is the shortest spelling I could think of for such a compond
"Something-Collection" form.

If the conflict with the schedutils utility is a concern, then the
next best alternative would be:

taskgroups

This is the next shortest way to spell this "Something-Collection" form.

-- 
  I won't rest till it's the best ...
  Programmer, Linux Scalability
  Paul Jackson <[EMAIL PROTECTED]> 1.925.600.0401
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: suspend2 merge (was Re: [Suspend2-devel] Re: CFS and suspend2: hang in atomic copy)

2007-04-28 Thread Josh Triplett
Matthew Garrett wrote:
> On Sat, Apr 28, 2007 at 12:15:50PM -0700, David Lang wrote:
>> with dynaticks now in the kernel it may even be possible to have the idle 
>> process decide that the next event is far enough away that it should 
>> suspend-to-ram until that point.
> 
> This would be ideal (and it's broadly what the OLPC guys are aiming for, 
> I think), but on most platforms you're looking at at least a second or 
> so to resume. As far as I know, we're still looking at ~60 ticks a 
> second at best for an average desktop, so that's not going to be a win.

As long as the system has a clear idea of how long it will take to resume, it
can schedule a wakeup for a reasonable amount of time before that.  Ideally, a
completely unused system might not need a tick for several seconds.  However,
I agree that it doesn't make sense to add such functionality to the kernel
until someone can show a system that can actually wait that long between
ticks.

- Josh Triplett
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [stable] 2.6.21 known regressions (v2) (for -stable team)

2007-04-28 Thread Greg KH
On Sat, Apr 28, 2007 at 11:21:54PM +0200, Krzysztof Halasa wrote:
> Greg KH <[EMAIL PROTECTED]> writes:
> 
> >> Also, assignation of ttyUSB#'s is volatile depending on phase of the
> >> moon when booted.
> >
> > That's always been the case, ever since the 2.2 kernel releases.  Please
> > use udev if you want persistent device names for your tty USB devices.
> 
> I don't know how udev (or anything) could help here. AFAIK the
> converters have no serial numbers and no other means to
> differentiate.

Some do have serial numbers, and others do not.  You can also use hints
on which port they are plugged into, which is usually the best way to
name these types of things persistently.

thanks,

greg k-h
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [GIT PATCH] UIO patches for 2.6.21

2007-04-28 Thread Greg KH
On Sat, Apr 28, 2007 at 10:31:37PM +0200, Thomas Gleixner wrote:
> On Sat, 2007-04-28 at 21:15 +0100, Alan Cox wrote:
> > > > I have a political question, if I have a user space driver, is my 
> > > > kernel 
> > > > tainted or not? 
> > > 
> > > Surely not. By using the kernel's userspace interface, you create no
> > > "derived work" of the kernel. See COPYING in the root directory of the 
> > > kernel sources for details.
> > 
> > That only covers normal system calls - but I don't think thats what is
> > relevant, taints are for debug assistance not politics.
> > 
> > I think we should have a taint flag for UIO type drivers. Not for any
> > licensing or political reason but for the simple fact it means that there
> > may be other complexities to debugging - and not the same one as a binary
> > module. Probably we want the same marker for mmap /dev/mem too.
> 
> I agree, if we make it entirely clear that the flag is nonpolitical. 

Hm, I don't know, what makes this different from the fact that we can
mmap PCI device space today through the proc and sysfs entries?  That's
how X gets direct access to the hardware for a number of different
cards, and that's pretty much the same thing as the UIO interface is
doing.

Unless you think we should also use the same "taint" flag on those
accesses too, and if so, I have no objection.

thanks,

greg k-h
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: PCI Express MMCONFIG and BIOS Bug messages..

2007-04-28 Thread Robert Hancock

Chuck Ebbert wrote:

Robert Hancock wrote:

I've seen a lot of systems (including brand new Xeon-based servers from
IBM and HP) that output messages on boot like:

PCI: BIOS Bug: MCFG area at f000 is not E820-reserved
PCI: Not using MMCONFIG.


So Microsoft is explicitly telling the BIOS developers that there is no
need to reserve the MMCONFIG space in the E820 table because Windows
doesn't care. On that basis it doesn't seem like a valid check to
require it to be so reserved, then.

Really, I think we should be basing this check on whether the
corresponding memory range is reserved in the ACPI resources, like
Windows expects. This does require putting more fingers into ACPI from
this early boot stage, though..



Intel had posted patches to do exactly that, but they were rejected.
I don't remember why now...


I tried adapting a patch by Rajesh Shah to do this for current kernels:

http://lkml.org/lkml/2006/6/23/365

It walks through all the motherboard resource devices and tries to pull 
out the resource settings for all of them using the _CRS method. 
(Depending on how you do the probing, the _STA method is called as well, 
either before or after.) From my limited ACPI knowledge, the problem is 
that the PCI MMCONFIG initialization is called before the main ACPI 
interpreter is enabled, and these control methods may try to access 
operation regions who don't have handlers set up for them yet, so a 
bunch of "no handler for region" errors show up.


I think some earlier version of this patch was in -mm for a while back 
in 2.6.18 times, I actually complained about it back then because it 
falsely detected the region wasn't reserved on my system since it bailed 
out on the first such error before it found the reservation. On my 
system it turns out that the device called EXPL that has the MCFG table 
reservation in it has the addresses statically defined in the _CRS 
method and doesn't need to access any regions, so if you make the search 
continue on after errors, it does actually work, but there's probably no 
guarantee that all systems will have the MCFG reservation statically 
defined like this, and we can't have all those ACPI errors from other 
devices clogging the logs either.


So essentially if we want to do this check based on ACPI resource 
reservations, we need to be able to execute control methods at the point 
that MMCONFIG is set up. Is there a reason why this can't be made 
possible (like by moving the necessary parts of ACPI initialization 
earlier)?


--
Robert Hancock  Saskatoon, SK, Canada
To email, remove "nospam" from [EMAIL PROTECTED]
Home Page: http://www.roberthancock.com/


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [patch] CFS scheduler, -v6

2007-04-28 Thread Kasper Sandberg
Okay so i've tried with cfs 7 now, and the completely broken audio
behavior is fixed.

The only things i really notice now is that gtk apps seems to redraw
somewhat slower, and renicing X doesent seem to be able to bring it on
par with SD or vanilla.

And smoothness just doesent match SD, it may be abit better than
vanilla/staircase, i cant really definitively say, but SD just has the
smoothness factor which is extremely attractive.

This is with 3d stuff, like through wine or natively on linux, under
load(and even just minor things like using a browser or other things,
like spamasassin), vanilla/staircase(not rsdl or sd)/cfs will go down in
FPS, but at the same time stutter, it goes down to around the same fps
under same load, as SD, but SD is completely smooth.

Im not sure im describing properly, but say it takes 35fps for the 3d
stuff to seem perfect, the fps monitor updates once every 1 or two
seconds, showing average fps(havent looked at the code, but i assume it
spans those 1-2 seconds), usually i have like 60 fps, but under load it
can go down to 35, but under anything but SD its not smooth, it will do
the 35 fps, but i suspect it does it in chunks, for example it will skip
for 200 ms and then hurry to display the 35 frames. This means it does
get the workload done, but not in a very plesant matter, and its here i
see SD as being in such a high league that its really impossible to
describe the results with any other word than Perfect.

mvh.
Kasper Sandberg

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: suspend2 merge (was Re: [Suspend2-devel] Re: CFS and suspend2: hang in atomic copy)

2007-04-28 Thread Matthew Garrett
On Sat, Apr 28, 2007 at 12:15:50PM -0700, David Lang wrote:

> with dynaticks now in the kernel it may even be possible to have the idle 
> process decide that the next event is far enough away that it should 
> suspend-to-ram until that point.

This would be ideal (and it's broadly what the OLPC guys are aiming for, 
I think), but on most platforms you're looking at at least a second or 
so to resume. As far as I know, we're still looking at ~60 ticks a 
second at best for an average desktop, so that's not going to be a win.

-- 
Matthew Garrett | [EMAIL PROTECTED]
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [ANNOUNCE] battery2 git repository

2007-04-28 Thread Anton Vorontsov
On Sat, Apr 28, 2007 at 12:08:04PM -0700, Andrew Morton wrote:
> On Sat, 28 Apr 2007 16:31:29 +0400 Anton Vorontsov <[EMAIL PROTECTED]> wrote:
> 
> > On Sat, Apr 28, 2007 at 04:51:48AM -0700, Andrew Morton wrote:
> > > On Fri, 27 Apr 2007 03:29:02 +0400 Anton Vorontsov <[EMAIL PROTECTED]> 
> > > wrote:
> > > 
> > > > To not confuse with David own battery-2.6 repository, it's called
> > > > battery2-2.6, and can be found here:
> > > > 
> > > > http://git.infradead.org/?p=users/cbou/battery2-2.6.git;a=summary
> > > > 
> > > > You can get it using "git clone --reference linux-2.6 \
> > > > git://git.infradead.org/users/cbou/battery2-2.6.git" command.
> > > 
> > > i386 `make allmodconfig':
> > > 
> > > ERROR: "battery_is_external_power_supplied" 
> > > [drivers/battery/ds2760_battery.ko] undefined!
> > > ERROR: "battery_unregister" [drivers/battery/ds2760_battery.ko] undefined!
> > > ERROR: "battery_register" [drivers/battery/ds2760_battery.ko] undefined!
> > > ERROR: "battery_status_changed" [drivers/battery/ds2760_battery.ko] 
> > > undefined!
> > 
> > :-/
> > 
> > It should be fixed 37 hours ago by
> > 
> > http://git.infradead.org/?p=users/cbou/battery2-2.6.git;a=commit;h=cbb1e1b9e3a2cbf62ce4c13ef95d146ebc5e7274
> 
> I had that.  I just did a fresh fetch and it still happens

  %-[   ]|floor

Andrew, I'm wondering if "make clean" would help...

I'm not lying, it works here. :-/

> akpm2:/usr/src/25> cd /usr/src/git26
> akpm2:/usr/src/git26> cat .git/branches/git-battery 
> git://git.infradead.org/users/cbou/battery2-2.6.git
> akpm2:/usr/src/git26> git-fetch git-battery
> akpm2:/usr/src/git26> git-checkout git-battery 
> Switched to branch "git-battery"
> akpm2:/usr/src/git26> setenv ARCH i386
> akpm2:/usr/src/git26> make allmodconfig > /dev/null
> akpm2:/usr/src/git26> make vmlinux modules

I've done these steps, 1:1, copy-pasted, assuming that
git26 is Linus' tree.

So, I have:

cbou:~/linux-2.6$ git log --pretty=oneline | head -n 15
045e09c3c8c71d41e9b2d98f2781cf0fa19ac3f9 Apple PMU Battery Kconfig: should also 
depend on BATTERY
8a7c6667b37e9fe407f68c4a53b8ff90e375d06a pda_power: fix copy-paste artifact
5f2a90ceccd3cc25a607c5658e986d07aa660a40 apm_power: add ability to calculate 
capacity using energy
ed2702e9eedb16c65017cbd1313fdc7ee3f2c5ff pmu_battery: Apple PMU battery initial 
commit
d38e1fb5612d950d64d09b2513af85edaa696d71 battery: add "model_name" and 
"present" attributes
cbb1e1b9e3a2cbf62ce4c13ef95d146ebc5e7274 battery: fix modular build
c565f9872f7f84f5e62b5ec1c90f140d443b756c ds2760_battery: use less "#ifdefs"
fe0c0cd7c0f98f479b2d2895194460139cec566a ds2760 W1 slave
bbb555a9edc8c5610ec5351bf984b6477d7486d4 remove "#if 0" from find_bus function, 
export it.
ed061df82fbbb6d2228e9d1d5051a6f70b6849bd 1-Wire ds2760 chip battery driver
a3e39e1b92d5cbe4a51be5f33208868dcf14da35 APM emulation driver for class 
batteries
8f6b1c2027c967ac9fe69a2cca74a0e682189e5a Universal battery class
fa1099f32ef0d2dc64b09a1de034167cf0db1f37 pda power driver
a9d7bc2ccadd2b6cb7eee75664c73fb75c58fa08 External power framework
de46c33745f5e2ad594c72f2cf5f490861b16ce1 Linux 2.6.21

cbou:~/linux-2.6$ git status
# On branch git-battery
nothing to commit (working directory clean)

> 
> WARNING: "battery_is_external_power_supplied" 
> [drivers/battery/ds2760_battery.ko] undefined!
> WARNING: "battery_unregister" [drivers/battery/ds2760_battery.ko] undefined!
> WARNING: "battery_register" [drivers/battery/ds2760_battery.ko] undefined!
> WARNING: "battery_status_changed" [drivers/battery/ds2760_battery.ko] 
> undefined!
> make[1]: *** [__modpost] Error 1

And logs:

cbou:~/linux-2.6$ export ARCH=i386
cbou:~/linux-2.6$ make allmodconfig > /dev/null
cbou:~/linux-2.6$ make vmlinux modules
...
  CC [M]  drivers/battery/battery_core.o
  CC [M]  drivers/battery/battery_sysfs.o
  CC [M]  drivers/battery/battery_leds.o
  LD [M]  drivers/battery/battery.o
  CC [M]  drivers/battery/ds2760_battery.o
  LD  drivers/block/built-in.o
  CC [M]  drivers/block/floppy.o
...
  LD  drivers/power/built-in.o
  CC [M]  drivers/power/external_power.o
  CC [M]  drivers/power/pda_power.o
...
  CC  drivers/battery/battery.mod.o
  LD [M]  drivers/battery/battery.ko
  CC  drivers/battery/ds2760_battery.mod.o
  LD [M]  drivers/battery/ds2760_battery.ko
  CC  drivers/block/DAC960.mod.o
  LD [M]  drivers/block/DAC960.ko
  CC  drivers/block/aoe/aoe.mod.o
...
  CC  drivers/power/external_power.mod.o
  LD [M]  drivers/power/external_power.ko
  CC  drivers/power/pda_power.mod.o
  LD [M]  drivers/power/pda_power.ko
...
  LD [M]  sound/usb/snd-usb-lib.ko
  CC  sound/usb/usx2y/snd-usb-usx2y.mod.o
  LD [M]  sound/usb/usx2y/snd-usb-usx2y.ko
cbou:~/linux-2.6$ 


Here is my setup:

cbou:~$ make -v
GNU Make 3.81
Copyright (C) 2006  Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.

This program built 

Re: [PATCH] i386: init early_gdt_descr and idle task properly on voyager

2007-04-28 Thread Andi Kleen
On Sunday 29 April 2007 02:21:27 Jeremy Fitzhardinge wrote:
> Initialize early_gdt_descr and idle task properly.
> 
> [ Incremental fix for "i386: introduce voyager smp_ops, fix voyager build" ]

Please do a merged patch again and I'm waiting for it being tested.

-Andi
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: Linux 2.6.21

2007-04-28 Thread Markus Rechberger

On 4/29/07, Bob Tracy <[EMAIL PROTECTED]> wrote:

Linus Torvalds wrote:
> On Sun, 29 Apr 2007, Markus Rechberger wrote:
> > How else should bugs get handled, sending them to the lkml?
>
> Actually, looking at Adrian's regression lists, yes. lkml worked better
> than bugzilla did. By at _least_ a factor of two.

Since 1992, lkml (with "Cc:" to the appropriate subsystem mailing list
if applicable) and the presumed responsible parties are the only channels
I've used to report the bugs I encounter.



since there are subsystems out there which are managed separatly this
doesn't work out.
I wasn't happy when I noticed that patches got applied to the
sourcecode I contributed without notifying me while I still worked on
that code separatly
It was moreover the fault of the subsystem maintainer to not notify me
back then but a centralized bugreporting (as bugzilla) tool would at
least have notified me, or I would have been able to see the suggested
changes there.

But I agree with that if you're only 1 level far away from the linux kernel.


Other methods come and go, but old habits die hard, particularly when
they have a knack for producing the desired result.  Historically,
requiring a developer to fire up a GUI to read a bug report decreases
the chance that bug report will be noticed.  The development community
can do whatever flips its collective switch as far as tracking bugs,
but the bugs have to be reported and noticed before tracking becomes a
meaningful activity.

One more thought and I'll get off your screens...  We've steadfastly
resisted making lkml and friends subscriber-only mailing lists precisely
because we don't want to miss a potential bug report because a would-be
submitter isn't subscribed.  If people aren't looking for bug reports
here, what's the point?



it's just easy to miss something here, if an ext3 bug comes in and all
people who're involved in the ext3 filesytem are on vacation I'm sure
they won't read all the mails which came in during a week, now take a
part of the kernel which is smaller than the ext3 filesystem (eg. usb
gadgets, smaller drivers)

Markus
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[2.6.21.stable PATCH] ACPI: Fix 2.6.21 boot regression on P4/HT

2007-04-28 Thread Len Brown
Up through 2.6.20 we cleared the FADT.CSTATE_CONTROL field
for FADT versions before r3, because it made no sense
for that reserved field to be set for pre-ACPI 2.0 systems.

It turns out that not clearing this field exposes
Linux to SMM BIOS failures, so do the same in 2.6.21.

http://bugzilla.kernel.org/show_bug.cgi?id=8346

Signed-off-by: Len Brown <[EMAIL PROTECTED]>
---
diff --git a/drivers/acpi/tables/tbfadt.c b/drivers/acpi/tables/tbfadt.c
index 807c711..d341491 100644
--- a/drivers/acpi/tables/tbfadt.c
+++ b/drivers/acpi/tables/tbfadt.c
@@ -347,6 +347,20 @@ static void acpi_tb_convert_fadt(void)
acpi_gbl_xpm1b_enable.space_id = 
acpi_gbl_FADT.xpm1a_event_block.space_id;
 
}
+   /*
+* _CST object and C States change notification start with
+* ACPI 2.0 (FADT r3).  Although the field should be Reserved
+* and 0 before then, some pre-r3 FADT set this field and
+* it results in SMM-related boot failures.  For them, clear it.
+*/
+   if ((acpi_gbl_FADT.header.revision < 3) &&
+   (acpi_gbl_FADT.cst_control != 0)) {
+   ACPI_WARNING((AE_INFO,
+   "Ignoring BIOS FADT r%u C-state control",
+   acpi_gbl_FADT.header.revision));
+   acpi_gbl_FADT.cst_control = 0;
+   }
+
 }
 
 /**
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: maturity levels: a first pass

2007-04-28 Thread Stefan Richter
Robert P. J. Day wrote:
> +   This feature gives you the ability to de-select entire sets of
> +   kernel features based on how they've been tagged with the
> +   "maturity" directive.

Why expose the end-user to implementation details like "been tagged with
the 'maturity' directive"?

...
> +config MATURITY_DEPRECATED
> + bool "Display DEPRECATED features."
...

Maybe you rather want

bool "Allow to select DEPRECATED features."

because MATURITY_DEPRECATED=N probably means "Do not allow to select
DEPRECATED features" which implies that deprecated features will be
deselected.  In your wording, MATURITY_DEPRECATED=N would be just "Do
not display DEPRECATED features" which is probably less than what you
want it to be.

That said, I don't know if the approach is going into the right
direction.  For example, the way you are starting it requires updates to
all Kconfig UIs/scripts, to work correctly.  Otherwise, users could
select ACTIVATE_MATURITY but the tags would still be ignored.

Another approach could be to
  - continue to use "config EXPERIMENTAL" and "depends on EXPERIMENTAL"
and extend it for OBSOLETE, and if you cannot resist, for
DEPRECATED,
  - extend interactive UIs like xconfig and menuconfig and oldconfig to
display an EXPERIMENTAL sign alongside the title of an option
which depends on EXPERIMENTAL,
  - delete occurrences of the string EXPERIMENTAL from titles of options
and help texts,
  - vice versa for OBSOLETE, and if you cannot resist, for
DEPRECATED.
This does what you want while it keeps contents separate from
presentation and avoids to extend the Kconfig language.  A simple
Kconfig language without presentational ballast allows for creation of a
multitude of fine-tuned configurator UIs/scripts, which can be extended
by all sorts of features, e.g. better support in dealing with obsolete
configuration options.
-- 
Stefan Richter
-=-=-=== -=-- ===-=
http://arcgraph.de/sr/
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: random thoughts on DEPRECATED and OBSOLETE

2007-04-28 Thread Stefan Richter
Robert P. J. Day wrote:
> * deprecated:  while a feature is still supported, its use is
> discouraged because there is a better alternative that you should
> consider migrating to at your convenience.

IOW "discouraged, no {mid,long}-term commitment, alternative available,
supported"

> * obsolete:  while a feature is still in the tree, it is no longer
> supported and no one should need it anymore, and everyone *should* be
> using the better alternative at this point.

IOW "discouraged, no {mid,long}-term commitment, alternative available,
*un*supported"

Note, that's different from http://kerneltrap.org/node/7593 --- the
supported bit is new.  Why would I officially support what I deprecate?

Also, why don't we just adopt what "deprecated" and "obsolete" mean in
real life?  (English dictionaries say, one means "disapproved", the
other means "outdated" or "no longer in use".)  And if you don't find
these meanings applicable, other terms should be chosen whose
established meaning better matches what you want to express.

[...]
> there is an obvious timeline for features:
> 
>   normal -> deprecated -> obsolete

That wasn't clear (to me) from your earlier definitions.

IOW "normal" -> "obsolete and deprecated, phase 1" -> "obsolete and
deprecated, phase 2"  (using the real-life meanings of the terms here)

with the fine distinction that there is still support available in phase
1, however curious that is.

Besides, I find it unfeasible to divide a feature removal process into
two phases.  (I was involved in feature removals before and continue to
be involved in them.)

[...]
> in any event, i don't want to drag this out too much longer.

At least my pestering seems to lead to increasing precision in your
wordings.  And believe me, precision in a feature removal process is
valuable for each party involved.
-- 
Stefan Richter
-=-=-=== -=-- ===-=
http://arcgraph.de/sr/
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: Linux 2.6.21

2007-04-28 Thread Markus Rechberger

On 4/29/07, Linus Torvalds <[EMAIL PROTECTED]> wrote:



On Sun, 29 Apr 2007, Markus Rechberger wrote:
>
> I totally disagree here, bugzilla is a very good tool. If someone is
> too lazy to look at it it's his problem.

You must be doing things very differently from a lot of other people if
you think that's the case.



Well I'm behind the stuff I'm doing because I'm interested in it. And
if some bugs are introduced by my work or derived by my work I'd like
to get them cleaned up in the end.
If I see that someone reports bugs which doesn't really address my
work at all I just forward them to the subsystem/maintainer who's "in
charge" (if someone can say it that way for an open source project)


> Kernel Janitors can pick out some bugs which aren't addressed by
> anyone or got left behind.

IF that happened, it would actually be great. That's what I'm arguing for.
And it was basically what Adrian was doing!



I'm very sure that happens maybe it's just not visible to everyone
because there are so many open issues. (I just take myself as an
example here, I didn't do too much with other bugs but at least some
of my work closed 5 other bugs this year beside the bugreports I'm
getting directly)


> How else should bugs get handled, sending them to the lkml?

Actually, looking at Adrian's regression lists, yes. lkml worked better
than bugzilla did. By at _least_ a factor of two.



Yes Adrian did a very good job with collecting every bugreport and
sending the mails to all corresponding subsystems.


> I'm 100% sure some bugreports will also get lost then, but on the lkml
> they'll very likely remain lost whereas in the bugzilla they'll remain
> as open.

What's the difference between bugzilla and lkml.org? Both have search
buttons. Both archive the old stuff. Both can be pointed to.



Both have search buttons yes, but the lkml doesn't leave an unread
mail open ontop of the lkml as bugzilla does if you look for open bugs
in a subsystem.


> what are your suggestions to improve a bugreporting tool, I'm very
> sure that many people, especially people who want to get into existing
> projects here, would love to contribute.

I don't know what the perfect setup is, but I do know that bugzilla is
very close to be totally useless for the top-level maintainers.

Try to think like a person who doesn't maintain *one* specific file in the
kernel, but who can actually make a good judgement about a lot of things,
or at least funnel a problem report to the right person?

And now, imagine that that person is also fairly busy (exactly *because*
he's not looking at a single file, he may be maintaining a huge subsystem
that has multiple submaintainers etc).

And ask yourself whether bugzilla really helps.



bugzilla keeps the bugs open at least, at the lkml I use to skip days sometimes.
Many people who consider themself as maintainer of a subsystem are
assigned to a subsection on bugzilla, if it really doesn't work out we
have to change the corresponding maintainer.
If that maintainer doesn't know where to go with that bugreport he can
easily send it to the lkml and some people will recognize the
sender/email and pay extra attention to it (that's just how I think
about it)


> I'd say this is a personal opinion, some people will get along with it
> and some of them will not...

I think bugzilla really only works for very "directed" issues. If you
already know exactly which driver is affected (which is often wrong
anyway: some of the bugs that were due timer breakage got blamed as disk
hangs!) it's almost totally useless.

And yes, maybe that's why you have a much higher opinion of bugzilla than
I do. To _me_ bugzilla is a total mess. There's absolutely _zero_ useful
information there. And I'm pretty certain that is true of a *lot* of other
people too. But if you have a small project, or you maintain a very
specific (and clearly delineated) part of a big project, bugzilla probably
looks a lot more palatable.


well are there any bugs that cannot be forwarded/directed to a
corresponding maintainer?
Maybe I don't see something here, can you point me out to a bugreport
which cannot be handled at all?
As a reference I'll take following bugreport:
http://thread.gmane.org/gmane.linux.kernel/521185

the bug doesn't even mention what device is affected, asking for
further detailed information (dmesg) shows up what's left at least..
(in the meanwhile the bug even got solved)

Markus
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: random thoughts on DEPRECATED and OBSOLETE

2007-04-28 Thread Stefan Richter
Robert P. J. Day wrote:
> i think this online definition matches what i have in mind:
> 
> http://www.google.com/search?hl=en=GGGL,GGGL:2006-10,GGGL:en=en=define:Deprecated=X=glossary_definition=title

"Definitions of Deprecated on the Web: [...] This term is used to refer
to /obsolete/ structures that should not be used for new applications".

Emphasis is mine.
I can agree with this and the other definitions at this search result.

> p.s.  just FYI, even *i'm* getting bored of this.  :-)

I thought so. :-)
-- 
Stefan Richter
-=-=-=== -=-- ===-=
http://arcgraph.de/sr/
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH] i386: init early_gdt_descr and idle task properly on voyager

2007-04-28 Thread Jeremy Fitzhardinge
Initialize early_gdt_descr and idle task properly.

[ Incremental fix for "i386: introduce voyager smp_ops, fix voyager build" ]

Signed-off-by: Jeremy Fitzhardinge <[EMAIL PROTECTED]>
Cc: James Bottomley <[EMAIL PROTECTED]>
Cc: Eric W. Biederman <[EMAIL PROTECTED]>

---
 arch/i386/kernel/smpboot.c   |3 ---
 arch/i386/mach-voyager/voyager_smp.c |2 ++
 include/asm-i386/processor.h |3 +++
 3 files changed, 5 insertions(+), 3 deletions(-)

===
--- a/arch/i386/kernel/smpboot.c
+++ b/arch/i386/kernel/smpboot.c
@@ -763,9 +763,6 @@ static inline struct task_struct * alloc
 #define alloc_idle_task(cpu) fork_idle(cpu)
 #endif
 
-/* Defined in head.S */
-extern struct Xgt_desc_struct early_gdt_descr;
-
 static int __cpuinit do_boot_cpu(int apicid, int cpu)
 /*
  * NOTE - on most systems this is a PHYSICAL apic ID, but on multiquad
===
--- a/arch/i386/mach-voyager/voyager_smp.c
+++ b/arch/i386/mach-voyager/voyager_smp.c
@@ -580,6 +580,8 @@ do_boot_cpu(__u8 cpu)
stack_start.esp = (void *) idle->thread.esp;
 
init_gdt(cpu);
+   per_cpu(current_task, cpu) = idle;
+   early_gdt_descr.address = (unsigned long)get_cpu_gdt_table(cpu);
irq_ctx_init(cpu);
 
/* Note: Don't modify initial ss override */
===
--- a/include/asm-i386/processor.h
+++ b/include/asm-i386/processor.h
@@ -749,6 +749,9 @@ extern void enable_sep_cpu(void);
 extern void enable_sep_cpu(void);
 extern int sysenter_setup(void);
 
+/* Defined in head.S */
+extern struct Xgt_desc_struct early_gdt_descr;
+
 extern void cpu_set_gdt(int);
 extern void switch_to_new_gdt(void);
 extern void cpu_init(void);

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: Linux 2.6.21

2007-04-28 Thread Bob Tracy
Linus Torvalds wrote:
> On Sun, 29 Apr 2007, Markus Rechberger wrote:
> > How else should bugs get handled, sending them to the lkml?
> 
> Actually, looking at Adrian's regression lists, yes. lkml worked better 
> than bugzilla did. By at _least_ a factor of two.

Since 1992, lkml (with "Cc:" to the appropriate subsystem mailing list
if applicable) and the presumed responsible parties are the only channels
I've used to report the bugs I encounter.

Other methods come and go, but old habits die hard, particularly when
they have a knack for producing the desired result.  Historically,
requiring a developer to fire up a GUI to read a bug report decreases
the chance that bug report will be noticed.  The development community
can do whatever flips its collective switch as far as tracking bugs,
but the bugs have to be reported and noticed before tracking becomes a
meaningful activity.

One more thought and I'll get off your screens...  We've steadfastly
resisted making lkml and friends subscriber-only mailing lists precisely
because we don't want to miss a potential bug report because a would-be
submitter isn't subscribed.  If people aren't looking for bug reports
here, what's the point?

--Bob Tracy
[EMAIL PROTECTED]
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: Linux 2.6.21

2007-04-28 Thread Linus Torvalds


On Sun, 29 Apr 2007, Neil Brown wrote:
> 
> I think more than half a brain is needed to do this well.  You need a
> reasonable understanding of how all the bits of the kernel work
> together so that you have a good chance of sending the bug in the right
> direction.

Yes. However, even if you just end up summarizing the current outstanding 
issues (and are not able to necessarily point to the right person), I 
suspect that all the top-level maintainers would be interested in it. As 
long as it's a "summary report twice a week" kind of thing.

In fact, I suspect a lot of non-maintainers would be interested too!

And if you then have some way for people to add commentary (and directing) 
to entries, you might start out not knowing where some bugreport should 
go, but you'll have people able to forward them.

I end up doing that fairly regularly - adding people to the Cc when I'm 
involved in a bug, and we suddenly notice that "hey, it looks like it's a 
timer" issue or something, and we end up adding Ingo and Thomas Gleixner 
to the cc.

This, btw, is why email is *so* much nicer than a web interface. A web 
interface is always "a single person looking at it". An email, on the 
other hand, is always "you can bounce it to make _another_ person look at 
it".

But I agree that the more involved in the kernel the initiating person has 
been (at least to *some* degree), the better. No question. I just don't 
think it necessarily needs to be a hugely core person. Anybody who has 
been reading lkml for the last few months will already know a lot of the 
people involved in different subsystems!

Linus
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: Linux 2.6.21

2007-04-28 Thread Linus Torvalds


On Sat, 28 Apr 2007, Martin J. Bligh wrote:
> 
> Go to http://bugzilla.kernel.org. Hit query. Find the box that says
> "Bug Changes, Only bugs changed in the last __ days". Stick 7 in it.
> 
> 74 bugs found.
> 
> Not hard to do.

And what part of the "directed" did you miss?

Do you really expect me to go there every day to look at all bugs? That's 
nbot a bug tracker. That's just a noise-maker.

It needs to be email, not some "mouse around for 30 seconds and type 
thing", and it needs to be *directed*. Preferably with somebody who 
actually did some manual scanning over it and spent a few minutes just 
looking at whether it looks like a worthy bug.

In other words: we shouldn't have all developers wasting time doing this. 
It would be much better to have _one_ person (or a group of people) doing 
it, and actually turnign your "Not hard to do" into real information, 
rather than just random data. Adrian did.

The good news is that it looks like now that people are aware of it, we 
hopefully have others who will help do this kind of thing.

Linus
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: Linux 2.6.21

2007-04-28 Thread Adrian Bunk
On Sat, Apr 28, 2007 at 04:40:31PM -0700, Linus Torvalds wrote:
>...
> What's the difference between bugzilla and lkml.org? Both have search 
> buttons. Both archive the old stuff. Both can be pointed to.

Mailing lists don't track bugs.

The _only_ reason why I originally started regression lists was because 
several kernel developers were spreading the fairy tale "noone tests -rc 
kernels".

This was only possible because so many bug reports to linux-kernel never 
get any reply, and are therefore lost.

After I started the regression lists, it suddenly turned out how many 
people test -rc kernels, and that even with regression lists at least 
weekly, it still often took weeks ontil some developer even started 
debugging a regression.

So what's the difference between bugzilla and lkml.org?
In Bugzilla we are able to see how bad our bug handling is...

>   Linus

cu
Adrian

-- 

   "Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
   "Only a promise," Lao Er said.
   Pearl S. Buck - Dragon Seed

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: Back to the future.

2007-04-28 Thread Nigel Cunningham
Hi.

On Sat, 2007-04-28 at 16:45 -0700, Linus Torvalds wrote:
> 
> On Sun, 29 Apr 2007, Rafael J. Wysocki wrote:
> > 
> > OK, more precisely: fs-related threads should not try to process their 
> > queues,
> > etc., after the snapshot is done, because that may cause some fs data to be
> > written at that time and then the fs in question may be corrupted after the
> > restore.  Not all of the I/O in general, fs data.
> 
> But that's not true _either_. That's only true because right now I think 
> we cannot even suspend to a swapfile (I might be wrong). 
> 
> If you have a swapfile on a filesystem, you'd need those fs queues 
> running!

For Suspend2, and I think for swsusp too, we bmap the locations when
allocating the storage, and then submit our own bios. Even if swsusp
isn't using this method, I'm pretty sure the swap code does bmapping at
swapon time to avoid raciness later.

> > Well, I'm not sure whether or not that still would have been the case if we 
> > had
> > stopped to freeze kernel threads for the hibernation/suspend.
> 
> Did you miss the email where Paul pointed out that Mac/PowerPC didn't use 
> to do any of this? And apparently never had any issues with it? And 
> probably worked more reliably several years ago than suspend/hibernation 
> does _today_?
> 
> Ie we do have history of _not_ freezing things.  The freezing came later, 
> and came with the subsystem that had more problems..

It also came because of problems. Not working perfectly isn't
necessarily a sign of a faulty reason for being added in the first
place.

I should also add, not freezing things is fine if you're happy with
getting half an image at most. If you want a full
just-as-if-I'd-never-turned-the-power-off image, you need freezing so
that you can have some pages which can be saved before others are
atomically copied, to ensure the whole image is consistent.

Nigel


signature.asc
Description: This is a digitally signed message part


Re: Linux 2.6.21

2007-04-28 Thread Linus Torvalds


On Sun, 29 Apr 2007, Adrian Bunk wrote:
> 
> Bugzilla has an email interface.
> Andrew forwards bugs from Bugzilla to developers.

Yes. And if you search around, you'll even see that I occasionally use it. 

But it's useful only once the bug has been assigned and somebody has 
actually *looked* at it. The fact that some people do this is a big credit 
(Andrew, Dave J etc)

> There might be small room for improvements, but I don't see how 
> man-power or technology could make a big difference in this area.

I'm talking about getting the developers to _look_ at the bugs in the 
first place. Bugzilla is not very good at that, because it has no useful 
interfaces for doing so (unless you can specify your area of interest so 
exactly that you can actually set yourself up as a maintainer of one 
particular area).

Almost none of the subtle (and thus harder) bugs tend to fall into that 
kind of nice category. 

For example, look at suspend/resume bugs. Do you realize that 99% of them 
are device driver issues, but how the heck do you connect a "my laptop 
does't resume" to the _right_ device driver maintainer?

And do you realize (and acknowledge) that it would be total madness to 
send all suspend/resume bugs to _everybody_ who maintains any device 
driver at all?

See? THAT is the problem with bugzilla. It only works for the "easy" 
cases. It works for the case where a reporter can say with certainty that 
the reason his machine doesn't boot is a particular network device driver 
(like the sis900 regression we had in 2.6.21). But once you know the 
subarea that precisely, bugzilla doesn't even help you that much, and it's 
likely easier and more productive to just send email directly to the right 
person and cc Jeff and netdev or something!

> "*once* you've found and gotten the right developer involved" is the 
> real problem, not how to track bugs.

And I agree 100%.

And bugzilla does *nothing* here.

> *This* is *the* problem.
> And no change in bug tracking will help with this problem.

So why are you pushing bugzilla? 

There are actually better bug trackers around. One of them is "google". 
For oopses, one of the thngs I do is to put in the most relevant 
information (backtrace etc) into google, and ask google to try to find the 
pattern. That sometimes actually does pretty well - you can get a real 
feel for "oh, there's a pattern here - they're all AMD machines with the 
NVidia chipset" kind of thing.

Bugzilla doesn't offer anything even remotely as useful. 

It's the "big picture" that tends to be hard to find.

And that's what *you* gave with the regression report. A summary. You even 
noted some of the patterns, so people actually had them already somewhat 
pre-sorted.

THAT is what we want.

But another way to get the "high-level picture" is to actually just say 
"what's active now". And that's why I think the whole "1600 open 
bug-reports" kind of thing is useless. Bugzilla does *not* have mail 
interfaces for that kind of "these 50 bugs were actively reported on and 
unresolved" in the last week summaries! 

(And if it did, it would still almost certainly need some human care and 
understanding)

Linus
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: Please revert [PATCH] user of the jiffies rounding patch: Slab

2007-04-28 Thread Arjan van de Ven
On Sat, 2007-04-28 at 16:35 -0700, Christoph Lameter wrote:

> Hmmm... Yes but that looks like it comes from a different function. Slab
> calls
> 
>  __round_jiffies_relative(HZ, cpu))
> 
> And its description says:
> 
> /**
>  *
>  * The exact rounding is skewed for each processor to avoid all
>  * processors firing at the exact same time, which could lead
>  * to lock contention or spurious cache line bouncing.


> This is exactly the wrong thing to do.


is it?

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] mm/memory.c: remove warning from an uninitialized spinlock. was: Re: 2.6.21-rc7-mm2

2007-04-28 Thread Andy Whitcroft
Andrew Morton wrote:
> On Thu, 26 Apr 2007 20:25:19 +0200
> Borislav Petkov <[EMAIL PROTECTED]> wrote:
> 
>> Remove build warning mm/memory.c:1491: warning: 'ptl' may be used 
>> uninitialized in this function.
>> The spinlock pointer is assigned to null since it gets overwritten right 
>> away in
>> pte_alloc_map_lock().
>>
>> Signed-off-by: Borislav Petkov <[EMAIL PROTECTED]>
>> ---
>>
>> Index: linux-mm/mm/memory.c
>> ===
>> --- linux-mm.orig/mm/memory.c2007-04-26 19:57:14.0 +0200
>> +++ linux-mm/mm/memory.c 2007-04-26 20:00:30.0 +0200
>> @@ -1488,7 +1488,7 @@
>> pte_t *pte;
>> int err;
>> struct page *pmd_page;
>> -   spinlock_t *ptl;
>> +   spinlock_t *ptl = NULL;
>>
>> pte = (mm == _mm) ?
>> pte_alloc_kernel(pmd, addr) :
>>
> 
> yes, I've been staring unhappily at this for some time.
> 
> Your change adds seven bytes of text to this function for no runtime
> benefit, just to fix a build-time warning.  It's a general problem.
> 
> 
> Often we just leave the warning in place and curse gcc each time it flies
> past.  Sometimes the code can be restructured in a sensible fashion to
> avoid the warning; often it cannot.
> 
> But I don't think I want to put up with a warning coming out of core MM all
> the time so let's go with the following silliness which adds no additional
> runtime cost.
> 
> --- 
> a/mm/memory.c~add-apply_to_page_range-which-applies-a-function-to-a-pte-range-fix
> +++ a/mm/memory.c
> @@ -1455,7 +1455,7 @@ static int apply_to_pte_range(struct mm_
>   pte_t *pte;
>   int err;
>   struct page *pmd_page;
> - spinlock_t *ptl;
> + spinlock_t *ptl = ptl;  /* Suppress gcc warning */
>  
>   pte = (mm == _mm) ?
>   pte_alloc_kernel(pmd, addr) :
> _
> 

Perhaps we should have some kind definition helper.

#define suppress_unused(x) x = x

spinlock_t *suppress_unused(ptl);

Perhaps?

-apw
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] i386: introduce voyager smp_ops, fix voyager build

2007-04-28 Thread Jeremy Fitzhardinge
Jeremy Fitzhardinge wrote:
> Eric W. Biederman wrote:
>   
>> Unless I have missed something early_gdt_descr still needs to be updated. 
>>   
>> 
>
> The patch is on top of Andi's current queue, which includes quite a few
> boot-time gdt setup cleanups.  early_gdt_descr has gone.

Hm, I was thinking of something else.  Checking...

J
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: Back to the future.

2007-04-28 Thread Linus Torvalds


On Sun, 29 Apr 2007, Rafael J. Wysocki wrote:
> 
> OK, more precisely: fs-related threads should not try to process their queues,
> etc., after the snapshot is done, because that may cause some fs data to be
> written at that time and then the fs in question may be corrupted after the
> restore.  Not all of the I/O in general, fs data.

But that's not true _either_. That's only true because right now I think 
we cannot even suspend to a swapfile (I might be wrong). 

If you have a swapfile on a filesystem, you'd need those fs queues 
running!

> Well, I'm not sure whether or not that still would have been the case if we 
> had
> stopped to freeze kernel threads for the hibernation/suspend.

Did you miss the email where Paul pointed out that Mac/PowerPC didn't use 
to do any of this? And apparently never had any issues with it? And 
probably worked more reliably several years ago than suspend/hibernation 
does _today_?

Ie we do have history of _not_ freezing things.  The freezing came later, 
and came with the subsystem that had more problems..

Linus
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [patch] CFS scheduler, -v7

2007-04-28 Thread S.Çağlar Onur
28 Nis 2007 Cts tarihinde, Ingo Molnar şunları yazmıştı: 
> * S.Çağlar Onur <[EMAIL PROTECTED]> wrote:
> > If you want some more output/info etc. please just say, i have both v6
> > and v7 available.
>
> could you try the auto-renice patch ontop of -v7:
>
>   http://people.redhat.com/mingo/cfs-scheduler/sched-cfs-auto-renice.patch
>
> does this make it behave like -v6?

Ingo, please ignore my first report until i found a proper way to reproduce 
the slowness cause currently CFS-v7, CFS-v7 + "renice patch", CFS-v7 + renice 
+ your private mail suggestions and CFS-v6 + "PI support for futexes patch" 
seems works equally (which is a good thing so X renicing seems really not 
needed, and there were no regression instead of my daydreams) or im too tired 
to understand the differences.

-- 
S.Çağlar Onur <[EMAIL PROTECTED]>
http://cekirdek.pardus.org.tr/~caglar/

Linux is like living in a teepee. No Windows, no Gates and an Apache in house!


signature.asc
Description: This is a digitally signed message part.


[PATCH] crypto: Remove pointless padlock module

2007-04-28 Thread Simon Arlott

When this is compiled in it is run too early to do anything useful:
[6.052000] padlock: No VIA PadLock drivers have been loaded.
[6.052000] padlock: Using VIA PadLock ACE for AES algorithm.
[6.052000] padlock: Using VIA PadLock ACE for SHA1/SHA256 algorithms.

When it's a module it isn't doing anything special, the same functionality 
can be provided in userspace by "probeall padlock padlock-aes padlock-sha" 
in modules.conf if it is required.


Signed-off-by: Simon Arlott <[EMAIL PROTECTED]>
Cc: Herbert Xu <[EMAIL PROTECTED]>
Cc: Michal Ludvig <[EMAIL PROTECTED]>
---
drivers/crypto/Kconfig   |   16 ++--
drivers/crypto/Makefile  |1 -
drivers/crypto/padlock.c |   58 --
3 files changed, 3 insertions(+), 72 deletions(-)
delete mode 100644 drivers/crypto/padlock.c

diff --git a/drivers/crypto/Kconfig b/drivers/crypto/Kconfig
index ff8c4be..f85cecc 100644
--- a/drivers/crypto/Kconfig
+++ b/drivers/crypto/Kconfig
@@ -1,10 +1,10 @@
menu "Hardware crypto devices"

config CRYPTO_DEV_PADLOCK
-   tristate "Support for VIA PadLock ACE"
-   depends on X86_32
+   bool "Support for VIA PadLock ACE"
+   depends on CRYPTO && X86_32
+   default y
select CRYPTO_ALGAPI
-   default m
help
  Some VIA processors come with an integrated crypto engine
  (so called VIA PadLock ACE, Advanced Cryptography Engine)
@@ -14,16 +14,6 @@ config CRYPTO_DEV_PADLOCK
  The instructions are used only when the CPU supports them.
  Otherwise software encryption is used.

- Selecting M for this option will compile a helper module
- padlock.ko that should autoload all below configured
- algorithms. Don't worry if your hardware does not support
- some or all of them. In such case padlock.ko will
- simply write a single line into the kernel log informing
- about its failure but everything will keep working fine.
-
- If you are unsure, say M. The compiled module will be
- called padlock.ko
-
config CRYPTO_DEV_PADLOCK_AES
tristate "PadLock driver for AES algorithm"
depends on CRYPTO_DEV_PADLOCK
diff --git a/drivers/crypto/Makefile b/drivers/crypto/Makefile
index 6059cf8..d070030 100644
--- a/drivers/crypto/Makefile
+++ b/drivers/crypto/Makefile
@@ -1,4 +1,3 @@
-obj-$(CONFIG_CRYPTO_DEV_PADLOCK) += padlock.o
obj-$(CONFIG_CRYPTO_DEV_PADLOCK_AES) += padlock-aes.o
obj-$(CONFIG_CRYPTO_DEV_PADLOCK_SHA) += padlock-sha.o
obj-$(CONFIG_CRYPTO_DEV_GEODE) += geode-aes.o
diff --git a/drivers/crypto/padlock.c b/drivers/crypto/padlock.c
deleted file mode 100644
index d6d7dd5..000
--- a/drivers/crypto/padlock.c
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * Cryptographic API.
- *
- * Support for VIA PadLock hardware crypto engine.
- *
- * Copyright (c) 2006  Michal Ludvig <[EMAIL PROTECTED]>
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- */
-
-#include 
-#include 
-#include 
-#include 
-#include 
-#include 
-#include 
-#include 
-#include "padlock.h"
-
-static int __init padlock_init(void)
-{
-   int success = 0;
-
-   if (crypto_has_cipher("aes-padlock", 0, 0))
-   success++;
-
-   if (crypto_has_hash("sha1-padlock", 0, 0))
-   success++;
-
-   if (crypto_has_hash("sha256-padlock", 0, 0))
-   success++;
-
-   if (!success) {
-   printk(KERN_WARNING PFX "No VIA PadLock drivers have been 
loaded.\n");
-   return -ENODEV;
-   }
-
-   printk(KERN_NOTICE PFX "%d drivers are available.\n", success);
-
-   return 0;
-}
-
-static void __exit padlock_fini(void)
-{
-}
-
-module_init(padlock_init);
-module_exit(padlock_fini);
-
-MODULE_DESCRIPTION("Load all configured PadLock algorithms.");
-MODULE_LICENSE("GPL");
-MODULE_AUTHOR("Michal Ludvig");
-
--
1.5.0.1

--
Simon Arlott
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: Linux 2.6.21

2007-04-28 Thread Linus Torvalds


On Sun, 29 Apr 2007, Markus Rechberger wrote:
> 
> I totally disagree here, bugzilla is a very good tool. If someone is
> too lazy to look at it it's his problem.

You must be doing things very differently from a lot of other people if 
you think that's the case.

> Kernel Janitors can pick out some bugs which aren't addressed by
> anyone or got left behind.

IF that happened, it would actually be great. That's what I'm arguing for. 
And it was basically what Adrian was doing!

> How else should bugs get handled, sending them to the lkml?

Actually, looking at Adrian's regression lists, yes. lkml worked better 
than bugzilla did. By at _least_ a factor of two.

> I'm 100% sure some bugreports will also get lost then, but on the lkml
> they'll very likely remain lost whereas in the bugzilla they'll remain
> as open.

What's the difference between bugzilla and lkml.org? Both have search 
buttons. Both archive the old stuff. Both can be pointed to.

> what are your suggestions to improve a bugreporting tool, I'm very
> sure that many people, especially people who want to get into existing
> projects here, would love to contribute.

I don't know what the perfect setup is, but I do know that bugzilla is 
very close to be totally useless for the top-level maintainers.

Try to think like a person who doesn't maintain *one* specific file in the 
kernel, but who can actually make a good judgement about a lot of things, 
or at least funnel a problem report to the right person?

And now, imagine that that person is also fairly busy (exactly *because* 
he's not looking at a single file, he may be maintaining a huge subsystem 
that has multiple submaintainers etc).

And ask yourself whether bugzilla really helps.

> I'd say this is a personal opinion, some people will get along with it
> and some of them will not...

I think bugzilla really only works for very "directed" issues. If you 
already know exactly which driver is affected (which is often wrong 
anyway: some of the bugs that were due timer breakage got blamed as disk 
hangs!) it's almost totally useless.

And yes, maybe that's why you have a much higher opinion of bugzilla than 
I do. To _me_ bugzilla is a total mess. There's absolutely _zero_ useful 
information there. And I'm pretty certain that is true of a *lot* of other 
people too. But if you have a small project, or you maintain a very 
specific (and clearly delineated) part of a big project, bugzilla probably 
looks a lot more palatable.

Linus
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: random thoughts on DEPRECATED and OBSOLETE

2007-04-28 Thread Robert P. J. Day
On Sun, 29 Apr 2007, Stefan Richter wrote:

> I see a discussion on OBSOLETE vs. BROKEN there, which even ended in
> a consensus, but I do not see an explicit discussion on OBSOLETE vs.
> DEPRECATED.

i think this online definition matches what i have in mind:

http://www.google.com/search?hl=en=GGGL,GGGL:2006-10,GGGL:en=en=define:Deprecated=X=glossary_definition=title

"A deprecated element or attribute is one that has been outdated by
newer constructs. Deprecated elements are defined in the reference
manual in appropriate locations, but are clearly marked as deprecated.
Deprecated elements may become obsolete in future versions of HTML. We
recommend that authors avoid using deprecated elements and attributes
whenever practical."

  note carefully how deprecated elements can still be used, but their
use is discouraged and they *may become obsolete*.  that's exactly
what i was getting at.  deprecated stuff *might* still be used;
obsolete stuff *shouldn't* be used.

rday

p.s.  just FYI, even *i'm* getting bored of this.  :-)
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: Please revert [PATCH] user of the jiffies rounding patch: Slab

2007-04-28 Thread Christoph Lameter
On Sat, 28 Apr 2007, Arjan van de Ven wrote:

> Christoph Lameter wrote:
> > The slab reaper takes global locks. If one makes all cache reapers fire at
> > the same time as this patch does then there will be a lot of contention that
> > may result lots of interrupt holdoffs since some locks are taken
> > with interrupts disabled. The vm statistics counters are updated
> > and will content for global cachelines if this is done.
> 
> > I'd suggest to use a staggered per cpu approach instead that runs multiple
> > per cpu timers at once. But every batch of these timers must be run at an
> > offset from each other. Not at the same time please.
> 
> from kernel/timer.c
> 
> 107
> 108 /*
> 109  * We don't want all cpus firing their timers at once hitting the
> 110  * same lock or cachelines, so we skew each extra cpu with an
> extra
> 111  * 3 jiffies. This 3 jiffies came originally from the mm/ code
> which
> 112  * already did this.
> 113  * The skew is done by adding 3*cpunr, then round, then subtract
> this
> 114  * extra offset again.
> 115  */
> 116 j += cpu * 3;
> 
> 
> isn't 3 jiffies distance per cpu enough for this already ??
> That's what it used to be before as well...

Hmmm... Yes but that looks like it comes from a different function. Slab
calls

 __round_jiffies_relative(HZ, cpu))

And its description says:

/**
 * __round_jiffies_relative - function to round jiffies to a full second
 * @j: the time in (relative) jiffies that should be rounded
 * @cpu: the processor number on which the timeout will happen
 *
 * __round_jiffies_relative() rounds a time delta  in the future (in jiffies)
 * up or down to (approximately) full seconds. This is useful for timers
 * for which the exact time they fire does not matter too much, as long as
 * they fire approximately every X seconds.
 *
 * By rounding these timers to whole seconds, all such timers will fire
 * at the same time, rather than at various times spread out. The goal
 * of this is to have the CPU wake up less, which saves power.
 *
 * The exact rounding is skewed for each processor to avoid all
 * processors firing at the exact same time, which could lead
 * to lock contention or spurious cache line bouncing.
 *
 * The return value is the rounded version of the @j parameter.
 */

This is exactly the wrong thing to do.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: random thoughts on DEPRECATED and OBSOLETE

2007-04-28 Thread Robert P. J. Day
On Sun, 29 Apr 2007, Stefan Richter wrote:

> (Although if a certain number of kernel components is
> inappropriately labeled, the facility becomes useless of course.)

well, sure, but if someone chooses to use a tool incorrectly, there's
really no way to stop them.  and i'm guessing that that sort of thing
would be quickly self-correcting based on peer pressure.  incorrectly
tagged features should become obvious fairly quickly when builds start
to break in unexpected ways.

> You said "it's not just presentational markup", I said "it is". :-)

no, it's not just presentational markup.  it's also a selection or
filtering utility, which i consider distinct from markup.  maybe we're
just disagreeing on semantics, so let's not flog this distinction.

> I see a discussion on OBSOLETE vs. BROKEN there, which even ended in
> a consensus, but I do not see an explicit discussion on OBSOLETE vs.
> DEPRECATED.  The only definition of DEPRECATED I see there is yours,
> and as it is worded, it is largely overlapping with the definition
> of OBSOLETE (which, as it is laid down in that thread, is mostly
> yours too) --- but it is not actually conflicting with it.

in a previous discussion, the definitions were pretty much as follows:

* deprecated:  while a feature is still supported, its use is
discouraged because there is a better alternative that you should
consider migrating to at your convenience.

* obsolete:  while a feature is still in the tree, it is no longer
supported and no one should need it anymore, and everyone *should* be
using the better alternative at this point.

IMHO, there is a clear distinction between those two definitions.
they are not orthogonal, they are mutually exclusive.  put another
way, there is an obvious timeline for features:

  normal -> deprecated -> obsolete

quite simply, based on the above, you can't be deprecated and obsolete
at the same time.

in any event, i don't want to drag this out too much longer.  i think
the proposal is reasonably clear, now it remains to be seen if enough
people think it's worth implementing.

rday
-- 

Robert P. J. Day
Linux Consulting, Training and Annoying Kernel Pedantry
Waterloo, Ontario, CANADA

http://fsdev.net/wiki/index.php?title=Main_Page

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: PANIC: 2.6.21-rc7-mm2, Kernel access of bad area, sig: 11

2007-04-28 Thread William Heimbigner


On Sat, 28 Apr 2007, William Heimbigner wrote:

On Sat, 28 Apr 2007, Andrew Morton wrote:


 On Sat, 28 Apr 2007 21:40:19 + (GMT) William Heimbigner
 <[EMAIL PROTECTED]> wrote:

>  This bug occurs in linux-2.6.21-rc7-mm2, and does not occur in 
>  2.6.21-rc7

>  ARCH is powerpc
> 
>  dmesg output, captured via netconsole:

>  [0.00] Using PowerMac machine description
>  [0.00] Total memory = 128MB; using 256kB for hash table (at 
>  c7fc)
>  [0.00] Linux version 2.6.21-rc7-mm2 ([EMAIL PROTECTED]) (gcc version 
>  4.1.1 (Gentoo 4.1.1-r3)) #3 SMP PREEMPT Sat Apr 28 14:29:54 CDT 2007
>  [0.00] Found UniNorth memory controller & host bridge @ 
>  0xf800 revision: 0xc0

>  [0.00] Mapped at 0xfdfc
>  [0.00] Found a Pangea mac-io controller, rev: 0, mapped at 
>  0xfdf4

>  [0.00] PowerMac motherboard: iMac "Flower Power"

 It ran OK on my G5.  Can you send the config please?


grep -v "is not set" .config:
# 
#  Automatically generated make config: don't edit

#  Linux kernel version: 2.6.21-rc7-mm2
#  Sat Apr 28 14:04:08 2007
# 
CONFIG_PPC_PM_NEEDS_RTC_LIB=y

CONFIG_PPC32=y
CONFIG_PPC_MERGE=y
CONFIG_MMU=y
CONFIG_GENERIC_HARDIRQS=y
CONFIG_IRQ_PER_CPU=y
CONFIG_RWSEM_XCHGADD_ALGORITHM=y
CONFIG_ARCH_HAS_ILOG2_U32=y
CONFIG_GENERIC_HWEIGHT=y
CONFIG_GENERIC_CALIBRATE_DELAY=y
CONFIG_GENERIC_FIND_NEXT_BIT=y
CONFIG_PPC=y
CONFIG_EARLY_PRINTK=y
CONFIG_GENERIC_NVRAM=y
CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
CONFIG_ARCH_MAY_HAVE_PC_FDC=y
CONFIG_PPC_OF=y
CONFIG_PPC_UDBG_16550=y
CONFIG_GENERIC_TBSYNC=y
CONFIG_AUDIT_ARCH=y
CONFIG_GENERIC_BUG=y

# 
#  Processor support
# 
CONFIG_CLASSIC32=y

CONFIG_6xx=y
CONFIG_PPC_FPU=y
CONFIG_ALTIVEC=y
CONFIG_PPC_STD_MMU=y
CONFIG_PPC_STD_MMU_32=y
CONFIG_SMP=y
CONFIG_NR_CPUS=2
CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"

# 
#  Code maturity level options
# 
CONFIG_EXPERIMENTAL=y

CONFIG_LOCK_KERNEL=y
CONFIG_INIT_ENV_ARG_LIMIT=32

# 
#  General setup
# 
CONFIG_LOCALVERSION=""

CONFIG_SWAP=y
CONFIG_SWAP_PREFETCH=y
CONFIG_SYSVIPC=y
CONFIG_IPC_NS=y
CONFIG_SYSVIPC_SYSCTL=y
CONFIG_POSIX_MQUEUE=y
CONFIG_BSD_PROCESS_ACCT=y
CONFIG_BSD_PROCESS_ACCT_V3=y
CONFIG_AUDIT=y
CONFIG_AUDITSYSCALL=y
CONFIG_IKCONFIG=y
CONFIG_IKCONFIG_PROC=y
CONFIG_SYSFS_DEPRECATED=y
CONFIG_BLK_DEV_INITRD=y
CONFIG_INITRAMFS_SOURCE=""
CONFIG_SYSCTL=y
CONFIG_EMBEDDED=y
CONFIG_SYSCTL_SYSCALL=y
CONFIG_KALLSYMS=y
CONFIG_HOTPLUG=y
CONFIG_PRINTK=y
CONFIG_BUG=y
CONFIG_ELF_CORE=y
CONFIG_BASE_FULL=y
CONFIG_FUTEX=y
CONFIG_ANON_INODES=y
CONFIG_EPOLL=y
CONFIG_SIGNALFD=y
CONFIG_TIMERFD=y
CONFIG_EVENTFD=y
CONFIG_SHMEM=y
CONFIG_VM_EVENT_COUNTERS=y
CONFIG_PROC_SMAPS=y
CONFIG_PROC_CLEAR_REFS=y
CONFIG_PROC_PAGEMAP=y
CONFIG_PROC_KPAGEMAP=y
CONFIG_SLUB=y
CONFIG_RT_MUTEXES=y
CONFIG_BASE_SMALL=0

# 
#  Loadable module support
# 
CONFIG_MODULES=y

CONFIG_MODULE_UNLOAD=y
CONFIG_MODULE_FORCE_UNLOAD=y
CONFIG_MODVERSIONS=y
CONFIG_MODULE_SRCVERSION_ALL=y
CONFIG_KMOD=y
CONFIG_STOP_MACHINE=y

# 
#  Block layer
# 
CONFIG_BLOCK=y


# 
#  IO Schedulers
# 
CONFIG_IOSCHED_NOOP=y

CONFIG_IOSCHED_AS=y
CONFIG_IOSCHED_DEADLINE=y
CONFIG_IOSCHED_CFQ=y
CONFIG_DEFAULT_CFQ=y
CONFIG_DEFAULT_IOSCHED="cfq"

# 
#  Platform support
# 
CONFIG_PPC_MULTIPLATFORM=y

CONFIG_PPC_CHRP=y
CONFIG_PPC_PMAC=y
CONFIG_PPC_NATIVE=y
CONFIG_MPIC=y
CONFIG_PPC_I8259=y
CONFIG_PPC_RTAS=y
CONFIG_RTAS_PROC=y
CONFIG_PPC_MPC106=y

# 
#  CPU Frequency support
# 
CONFIG_CPU_FREQ=y

CONFIG_CPU_FREQ_TABLE=y
CONFIG_CPU_FREQ_STAT=y
CONFIG_CPU_FREQ_STAT_DETAILS=y
CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
CONFIG_CPU_FREQ_GOV_POWERSAVE=y
CONFIG_CPU_FREQ_GOV_USERSPACE=y
CONFIG_CPU_FREQ_GOV_ONDEMAND=y
CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y
CONFIG_CPU_FREQ_PMAC=y
CONFIG_TAU=y

# 
#  Kernel options
# 
CONFIG_HZ_1000=y

CONFIG_HZ=1000
CONFIG_PREEMPT=y
CONFIG_PREEMPT_BKL=y
CONFIG_BINFMT_ELF=y
CONFIG_HOTPLUG_CPU=y
CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
CONFIG_KEXEC=y
CONFIG_ARCH_FLATMEM_ENABLE=y
CONFIG_ARCH_POPULATES_NODE_MAP=y
CONFIG_SELECT_MEMORY_MODEL=y
CONFIG_FLATMEM_MANUAL=y
CONFIG_FLATMEM=y
CONFIG_FLAT_NODE_MEM_MAP=y
CONFIG_SPLIT_PTLOCK_CPUS=4
CONFIG_RESOURCES_64BIT=y
CONFIG_ZONE_DMA_FLAG=1
CONFIG_ADAPTIVE_READAHEAD=y
CONFIG_DEBUG_READAHEAD=y
CONFIG_PROC_DEVICETREE=y
CONFIG_PM=y
CONFIG_PM_DEBUG=y
CONFIG_PM_SYSFS_DEPRECATED=y
CONFIG_SECCOMP=y
CONFIG_ISA_DMA_API=y

# 
#  Bus options
# 
CONFIG_ISA=y

CONFIG_ZONE_DMA=y
CONFIG_GENERIC_ISA_DMA=y
CONFIG_PPC_INDIRECT_PCI=y
CONFIG_PCI=y
CONFIG_PCI_DOMAINS=y
CONFIG_PCIEPORTBUS=y
CONFIG_PCCARD=y
CONFIG_PCMCIA=y
CONFIG_PCMCIA_LOAD_CIS=y
CONFIG_CARDBUS=y

# 
#  PC-card bridges
# 
CONFIG_PCMCIA_PROBE=y


# 
#  Advanced setup
# 

# 
#  Default settings for advanced configuration options are used
# 
CONFIG_HIGHMEM_START=0xfe00

CONFIG_LOWMEM_SIZE=0x3000
CONFIG_KERNEL_START=0xc000
CONFIG_TASK_SIZE=0x8000
CONFIG_BOOT_LOAD=0x0080

# 
#  Networking
# 
CONFIG_NET=y


# 
#  Networking options
# 
CONFIG_PACKET=y

CONFIG_UNIX=y
CONFIG_XFRM=y

Re: Linux 2.6.21

2007-04-28 Thread Linus Torvalds


On Sun, 29 Apr 2007, Adrian Bunk wrote:
> 
> That's exactly where Linus' "drop any bug reports that are more than a 
> week old" suggestion is completely flawed - no matter what the submitter 
> does, how often he tests latest kernels, noone will help him.

You talk, but what do you actually *suggest*?

Talk is cheap. You use to do the walk too, but you've already said that 
you're not interested in that any more. So excuse me if I'm not impressed. 

The thing is, bugzilla is totally broken because it's designed to help 
track bugs, but it's *not* designed to actually handle the much harder 
problem, which is to actually get the *right* developers to be aware of 
the *right* bugs!

And both of those "right"s are important. Spamming everybody will just 
mean that everybody tunes them out. And spamming even the right developers 
with useless bugreports will also just cause them to tune out the good 
ones.

The thing is, the "tracking bugs" part that bugzilla _can_ do is also 
totally _useless_ without that much more important phase, namely the 
"connect the parties". That's what you really used to do. You made 
developers connect to the reports, because your reports were _useful_ and 
not overly noisy.

But go back and look - did you notice that once you connect the dots, it 
turns out that bugzilla itself isn't all that wonderful. Quite a lot of 
your regression reports had other ways of pointing to the problems, 
including very much mailing list archive pointers etc!

So bugzilla isn't actually all it's touted to be even _once_ the 
connection between reporter and developer has been established. I really 
don't see why you are so hung up about bugzilla, when your own regression 
reports didn't generally point to it all that often!

(I just went back and double-checked: you had more than twice as many 
pointers to kernel mailing list archives than you had pointers to bugzilla 
in the one series I looked at. And I'm _not_ saying that's wrong at all: I 
think the mailing list is actually likely to be at LEAST as useful as 
bugzilla is as a bug-tracker!)

And bugzilla actually falls down even more than the mailing list does for 
the whole (and MUCH MORE IMPORTANT!) phase of connecting developers to bug 
reports. And THAT is really the problem here.

And no, I don't actually think that automatically closing entries that 
haven't gotten any attention in the last two weeks would "fix" bugzilla. 
But I think that it might actually make people 
 (a) more likely to look into bugzilla (and thus maybe improve the 
 "connecting" developers/reporters thing)
 (b) act as a trivial noise-removal thing, because it would give 
 preferential treatment to people who are diligent about their 
 bug-reports and are willing to follow up on them and it would also 
 remove the noise that comes from obvious things that broke and got 
fixed.

But I think the real fix is to have real humans that help de-noisify the 
bug reports. Let's call them the "bunk" group, just to pick a random 
four-letter combination. The kinds of people who help turn the mindless 
noise that is bugzilla (and the kernel mailing list) into directed 
_information_. 

No, nothing is ever going to be perfect. And "filtering" the noise will 
inevitably also end up dropping real information. But not filtering it 
will guarantee that even more is dropped.

Linus
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] x86: fix PSE pagetable construction

2007-04-28 Thread Jeremy Fitzhardinge
Eric W. Biederman wrote:
> Except for Xen my patch should work incrementally.

Yes, your patch is good.  I have it in my series followed by the
appropriate Xen patch, and it boots OK both Xen and native.

J

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] crypto: Use padlock.ko only as a module

2007-04-28 Thread Simon Arlott

On 28/04/07 23:37, Randy Dunlap wrote:

On Sat, 28 Apr 2007 17:44:42 +0100 Simon Arlott wrote:

The padlock.ko module is completely useless when compiled in 
because it can't do anything and gets run too early to output 
anything useful.

--- a/drivers/crypto/Makefile
+++ b/drivers/crypto/Makefile
@@ -1,4 +1,6 @@
-obj-$(CONFIG_CRYPTO_DEV_PADLOCK) += padlock.o
+ifeq ($(CONFIG_CRYPTO_DEV_PADLOCK),m)
+obj-m += padlock.o
+endif
 obj-$(CONFIG_CRYPTO_DEV_PADLOCK_AES) += padlock-aes.o
 obj-$(CONFIG_CRYPTO_DEV_PADLOCK_SHA) += padlock-sha.o
 obj-$(CONFIG_CRYPTO_DEV_GEODE) += geode-aes.o


I think that we prefer to enforce config symbols in Kconfig files,
not in Makefiles.  E.g.,


No, that would cause the wrong behaviour in this case. The two 
modules that depend on it for no reason work fine compiled in.


Ideally I'd just remove that module completely, all it does is 
trigger the loading of the other two modules when modules are 
used - so I'll submit a patch for that instead.



---
 drivers/crypto/Kconfig |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

--- linux-2621-pv.orig/drivers/crypto/Kconfig
+++ linux-2621-pv/drivers/crypto/Kconfig
@@ -2,7 +2,7 @@ menu "Hardware crypto devices"
 
 config CRYPTO_DEV_PADLOCK

tristate "Support for VIA PadLock ACE"
-   depends on X86_32
+   depends on X86_32 && m
select CRYPTO_ALGAPI
default m
help



--
Simon Arlott
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: random thoughts on DEPRECATED and OBSOLETE

2007-04-28 Thread Tilman Schmidt
Am 28.04.2007 15:25 schrieb Robert P. J. Day:
> http://fsdev.net/wiki/index.php?title=Maturity_levels

You note:

> DEPRECATED and OBSOLETE at the very least, whose definitions should be 
> reasonably obvious.

The obviousness is in the eye of the beholder. :-)

For the sake of us non-native speakers, the definitions might
bear spelling out. I know I've had my understanding of those two
terms significantly adjusted during the last discussion of them.

Thanks,
Tilman

-- 
Tilman Schmidt  E-Mail: [EMAIL PROTECTED]
Bonn, Germany
- In theory, there is no difference between theory and practice.
  In practice, there is.



signature.asc
Description: OpenPGP digital signature


Re: [PATCH] i386: introduce voyager smp_ops, fix voyager build

2007-04-28 Thread Jeremy Fitzhardinge
Eric W. Biederman wrote:
> Unless I have missed something early_gdt_descr still needs to be updated. 
>   

The patch is on top of Andi's current queue, which includes quite a few
boot-time gdt setup cleanups.  early_gdt_descr has gone.

J
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: Linux 2.6.21

2007-04-28 Thread Rafael J. Wysocki
On Sunday, 29 April 2007 00:33, Adrian Bunk wrote:
> On Sun, Apr 29, 2007 at 08:11:30AM +1000, Neil Brown wrote:
> > On Saturday April 28, [EMAIL PROTECTED] wrote:
> >...
> > > As Andrew has pointed out before though - even though he forwards
> > > the bugs, nobody does anything with it. The sad truth seems to be
> > > that people have very little interest in fixing bugs when they are
> > > reported - it's not sexy, I guess.
> > 
> > Not sexy, and also not at all easy.   A lot of the interesting bugs
> > seem to be subtle interactions between separate parts of the kernel -
> > one part making an assumption or exhibiting a behaviour that the other
> > part didn't expect.  And we all know that writing bug^Wcode is easier
> > than removing bugs.  I can spend hour and hours reading through code
> > trying to get the big picture, and end up finding a one-line change
> > that then needs documenting, testing and external review.  It's not
> > easy.
> > 
> > > I'm still unconvinced the users or the tool are the problem, but if it
> > > makes you happier, we can do that.
> > 
> > No, they aren't the problem.  Bugs are the problem.  But they might be
> > a more effective part of the solution.
> > 
> > My perception of the kernel bugzilla is that visibility is very low.
> > 
> > I think there is value in weekly reminders, and I wouldn't mind seeing
> > a weekly Email on linux-kernel with something like a list of open bugs
> > that have not seen any activity in between 1 and 2 weeks.  It might
> > get someone out-of-area interested, and might be noticed by someone
> > who thinks they are in-area and get them wondering why they didn't
> > find out when the bug was first reported.
> 
> The 100 kB email limit has to be lifted for this... 
> 
> More seriously, there are > 1000 open bugs in the kernel Bugzilla 
> without any activity during the last 2 weeks.
> 
> The problem is usually either "Not sexy, and also not at all easy." or
> "no maintainer".

Please add "limited human resources" to this list.

Greetings,
Rafael
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: Linux 2.6.21

2007-04-28 Thread Adrian Bunk
On Sat, Apr 28, 2007 at 03:33:39PM -0700, Linus Torvalds wrote:
> 
> 
> On Sat, 28 Apr 2007, Adrian Bunk wrote:
> > 
> > We are already quite good at ignoring bug reports that come through 
> > linux-kernel, and it's an _advantage_ of the kernel Bugzilla to see more 
> > than 1600 open bugs because this tells how bad we are at handling bugs.
> 
> No, it just shows that bugzilla doesn't matter for most of the kernel.
> 
> Don't say that "bugzilla tells how bad we are at handling bugs". It tells 
> how bad *bugzilla* is for handling bugs, nothing more.
> 
> Trying to play politics by pointing to bugzilla is pointless. Bugzilla is 
> used for a few subsystems (ACPI seems to use it actively, for example), 
> but I doubt most developers use it.
> 
> Would be be good to have a better bug-tracking setup? Yes. But I think it 
> takes man-power, and it would take something *fundamentally* better than 
> bugzilla.

Bugzilla has an email interface.
Andrew forwards bugs from Bugzilla to developers.

There might be small room for improvements, but I don't see how 
man-power or technology could make a big difference in this area.

> Maybe the new "http://kernelnewbies.org/known_regressions; thing will 
> evolve to something worth tracking. Right now, bugzilla isn't it (although 
> it can be a useful tracking place for individual bugs, *once* you've found 
> and gotten the right developer involved - but that's a huge step that 
> bugzilla generally does *not* do for us).

"*once* you've found and gotten the right developer involved" is the 
real problem, not how to track bugs.

And not only a developer active in this area, more important a 
developer who knows the subsystem/driver involved *and is willing
to work on bug reports*.

*This* is *the* problem.
And no change in bug tracking will help with this problem.

>   Linus

cu
Adrian

-- 

   "Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
   "Only a promise," Lao Er said.
   Pearl S. Buck - Dragon Seed

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: Back to the future.

2007-04-28 Thread Rafael J. Wysocki
On Saturday, 28 April 2007 23:25, Linus Torvalds wrote:
> 
> On Sat, 28 Apr 2007, Rafael J. Wysocki wrote:
> > > 
> > > The freezer has *caused* those deadlocks (eg by stopping threads that 
> > > were 
> > > needed for the suspend writeouts to succeed!), not solved them.
> > 
> > I can't remember anything like this, but I believe you have a specific test
> > case in mind.
> 
> Ehh.. Why do you thik we _have_ that PF_NOFREEZE thing in the first place?

Well, I don't know why exactly it had been originally introduced.  Currently,
it is used by the threads that should be running after the snapshot is done
(they are not only I/O threads).

> Rafael, you really don't know what you're talking about, do you?

I think I know.

> Just _look_ at them. It's the IO threads etc that shouldn't be frozen, 
> exactly *because* they do IO. You claim that kernel threads shouldn't do 
> IO, but that's the point: if you cannot do IO when snapshotting to disk,  
> here's a damn big clue for you: how do you think that snapshot is going to 
> get written?

OK, more precisely: fs-related threads should not try to process their queues,
etc., after the snapshot is done, because that may cause some fs data to be
written at that time and then the fs in question may be corrupted after the
restore.  Not all of the I/O in general, fs data.

Still, that alone probably is not a good enough reason for freezing all kernel
threads.

> I *guarantee* you that we've had a lot more problems with threads that 
> should *not* have been frozen than with those hypothetical threads that 
> you think should have been frozen.

Well, I'm not sure whether or not that still would have been the case if we had
stopped to freeze kernel threads for the hibernation/suspend.  I just see
potential problems that I've mentioned in the previous message and I don't see
any evidence that they cannot occur.

Greetings,
Rafael
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: Linux 2.6.21

2007-04-28 Thread Markus Rechberger

On 4/29/07, Linus Torvalds <[EMAIL PROTECTED]> wrote:



On Sat, 28 Apr 2007, Adrian Bunk wrote:
>
> We are already quite good at ignoring bug reports that come through
> linux-kernel, and it's an _advantage_ of the kernel Bugzilla to see more
> than 1600 open bugs because this tells how bad we are at handling bugs.

No, it just shows that bugzilla doesn't matter for most of the kernel.

Don't say that "bugzilla tells how bad we are at handling bugs". It tells
how bad *bugzilla* is for handling bugs, nothing more.



I totally disagree here, bugzilla is a very good tool. If someone is
too lazy to look at it it's his problem.
Kernel Janitors can pick out some bugs which aren't addressed by
anyone or got left behind. I also found some bugs there which could
have been solved by anyone here, the matter is just that many people
aren't interested in mainly bug fixing and many also work on different
other topics here.

How else should bugs get handled, sending them to the lkml?
I'm 100% sure some bugreports will also get lost then, but on the lkml
they'll very likely remain lost whereas in the bugzilla they'll remain
as open.


Trying to play politics by pointing to bugzilla is pointless. Bugzilla is
used for a few subsystems (ACPI seems to use it actively, for example),
but I doubt most developers use it.



as for the em28xx I actively use it, but I also set up a mailinglist
etc. and there are many supporters already...


Would be be good to have a better bug-tracking setup? Yes. But I think it
takes man-power, and it would take something *fundamentally* better than
bugzilla.



what are your suggestions to improve a bugreporting tool, I'm very
sure that many people, especially people who want to get into existing
projects here, would love to contribute.


Maybe the new "http://kernelnewbies.org/known_regressions; thing will
evolve to something worth tracking. Right now, bugzilla isn't it (although
it can be a useful tracking place for individual bugs, *once* you've found
and gotten the right developer involved - but that's a huge step that
bugzilla generally does *not* do for us).



I'd say this is a personal opinion, some people will get along with it
and some of them will not...

Markus
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: Linux 2.6.21

2007-04-28 Thread Adrian Bunk
On Sat, Apr 28, 2007 at 09:27:01PM +0100, Russell King wrote:
> On Sat, Apr 28, 2007 at 09:53:20PM +0200, Adrian Bunk wrote:
> > We are already quite good at ignoring bug reports that come through 
> > linux-kernel, and it's an _advantage_ of the kernel Bugzilla to see more 
> > than 1600 open bugs because this tells how bad we are at handling bugs.
> > How many thousand bug reports have been ignored during the same time on 
> > linux-kernel?
> 
> However, look at this bug:
> 
>   http://bugme.osdl.org/show_bug.cgi?id=7760
> 
> It's outside my knowledge to be able to fix for various reasons:
>...
> I'm personally very tempted to close it as "won't fix" (I wish there was
> a "can't fix" category.)
>...

So this is a completely debugged bug in a well-maintained subsystem
(no matter what the status in Bugzilla is).

The problem is that the other 1600 open bugs aren't in this state.

> I'm no longer serial maintainer.  Bug IDs after about 7000 reflect bugs
> submitted since I've resigned my serial maintainership, and therefore
> I've ignored them.
>...

That's one of the problems: Unmaintained subsystems.

Since you stepped down as serial maintainer (and it's your right as 
maintainer to do so), the serial subsystem is unmaintained.

That's exactly where Linus' "drop any bug reports that are more than a 
week old" suggestion is completely flawed - no matter what the submitter 
does, how often he tests latest kernels, noone will help him.

> It's far easier to ignore bug reports in bugzilla
> than it is to get categories reassigned (to whom? - dunno) or even
> deleted (if no one steps up presumably that's what needs to happen?)
>...

New subsystems always get default owners like
[EMAIL PROTECTED], and people interested in such 
bugs can edit their preferences to watching all (pseudo) users in whose 
bugs they are interested. [EMAIL PROTECTED] [1] would 
be the logical defult owner.

> Russell King

cu
Adrian

[1] or @linux-foundation.org

-- 

   "Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
   "Only a promise," Lao Er said.
   Pearl S. Buck - Dragon Seed

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: bug in RLIMIT_SIGPENDING

2007-04-28 Thread Roland McGrath
I don't think there is any reason to think the accounting is wrong.  The
accounted number of queue entries is 1.  The -1 (~0ul) displayed is the
maximum for your process, which is RLIM_INFINITY.

Nothing in what you've reported so far points positively towards a signals
issue per se.  First, you should see if you simply have a livelock
situation.  That is, your signal handler is running many times and never
letting fork complete.  Try setting the itimer to a much larger value like
one second, and see if the problem still occurs.  If not, you may just be
having timer signals going off too fast to finish a fork in between.  If
this is the case and it seems like fork should not take as long as it does,
then you can look into how long fork is really taking and why.

If in fact your signal handler does not run many times, then the issue is
stranger.


Thanks,
Roland
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: High Resolution Timer DOS

2007-04-28 Thread William Heimbigner

On Sat, 28 Apr 2007, Lee Revell wrote:


On 4/28/07, Thomas Gleixner <[EMAIL PROTECTED]> wrote:


 Well, it is not really a DoS. The rescheduling of the process is limited
 by the scheduler and the available CPU time (depending on the number of
 runnable tasks in the system).


Shouldn't an unprivileged process be rate limited somehow to avoid
flooding the machine with interrupts?  We restrict nonroot users from
setting the RTC interrupt rate higher than 64Hz for a similar reason
(granted, this limit dates back to the 486 days and should probably be
increased to 1024 Hz).


Isn't that what /etc/security/limits.conf is for?
Just limit the CPU usage.


Root and SCHED_FIFO tasks could be exempt from rate limiting, to avoid
the need to introduce a new rlimit which would take years for
userspace to catch up to.

Lee


William Heimbigner
[EMAIL PROTECTED]
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: Linux 2.6.21

2007-04-28 Thread Neil Brown
On Sunday April 29, [EMAIL PROTECTED] wrote:
> On Sun, Apr 29, 2007 at 08:11:30AM +1000, Neil Brown wrote:
> > 
> > I think there is value in weekly reminders, and I wouldn't mind seeing
> > a weekly Email on linux-kernel with something like a list of open bugs
> > that have not seen any activity in between 1 and 2 weeks.  It might
> > get someone out-of-area interested, and might be noticed by someone
> > who thinks they are in-area and get them wondering why they didn't
> > find out when the bug was first reported.
> 
> The 100 kB email limit has to be lifted for this... 
> 
> More seriously, there are > 1000 open bugs in the kernel Bugzilla 
> without any activity during the last 2 weeks.

I meant "between 1 and 2 weeks"  - so each bug hits linux-kernel once,
any only if no-one seem to care.
If I ask for bugs changed in the last 7 days I get 80
If I ask for bugs changed in the last 14 days I get 114.
So today, that list would have (114-80) = 34 bug, which I think it is
manageable to glance through and think "Would I like to care".

NeilBrown
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [ext3][kernels >= 2.6.20.7 at least] KDE going comatose when FS is under heavy write load (massive starvation)

2007-04-28 Thread Mikulas Patocka

On Sat, Apr 28, 2007 at 07:37:17AM +0200, Mikulas Patocka wrote:

SpadFS doesn't write to unallocated parts like log filesystems (LFS) or
phase tree filesystems (TUX2); it writes inside normal used structures,
but it marks each structure with generation tags --- when it updates
global table of tags, it atomically makes several structures valid. I
don't know about this idea being used elsewhere.


So how is this generation structure organized ? paper ?


Paper is in CITSA 2006 proceedings (but you likely don't have them and I 
signed some statement that I can't post it elsewhere :-( )


Basicly the idea is this:
* you have array containing 65536 32-bit numbers --- crash count table --- 
that array is on disk and in memory (see struct __spadfs->cct in my sources)
* you have 16-bit value --- crash count, that value is on disk and in memory 
too (see struct __spadfs->cc)


* On mount, you load crash count table and crash count from disk to 
memory. You increment carsh count on disk (but leave old in memory). You 
increment one entry in crash count table - cct[cc] in memory, but leave 
old on disk.
* On sync you write all metadata buffers, do write barrier, write one 
sector of crash count table from memory to disk and do write 
barrier again.

* On unmount, you sync and decrement crash count on disk.

--- so crash count counts crashes --- it is increased each time you mount 
and don't unmount.


Consistency of structures:
* Each directory entry has two tags --- 32-bit transaction count (txc) 
and 16-bit crash count(cc).
* You create directory entry with entry->txc = fs->txc[fs->cc] and 
entry->cc = fs->cc
* Directory entry is considered valid if fs->txc[entry->cc] >= entry->txc 
(see macro CC_VALID)
* If the directory entry is not valid, it is skipped during directory 
scan, as if it wasn't there
--- so you create a directory entry and its valid. If the system crashes, 
it will load crash count table from disk and there's one-less value than 
entry->txc, so the entry will be invalid. It will also run with increased 
cc, so it will never touch txc at an old index, so the entry will be valid 
forever.
--- if you sync, you write crash count table to disk and directory entry 
will be atomically made valid forever (because values in crash count table 
never decrease)


In my implementation, the top bit of entry->txc is used to mark whether 
the entry is scheduled for adding or delete, so that you can atomically 
add one directory entry and delete other.


Space allocation bitmaps or lists are managed in such a way that there are 
two copies and cc/txc pair determining which one is valid.


Files are extended in such a way that each file has two "size" entries and 
cc/txc pair denoting which one is valid, so that you can atomically 
extend/truncate file and mark its space allocated/freed in bitmaps or 
lists (BTW. this cc/txc pair is the same one that denotes if the directory 
entry is valid and another bit determines one of these two functions --- 
to save space).


Mikulas
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: High Resolution Timer DOS

2007-04-28 Thread Lee Revell

On 4/28/07, Thomas Gleixner <[EMAIL PROTECTED]> wrote:


Well, it is not really a DoS. The rescheduling of the process is limited
by the scheduler and the available CPU time (depending on the number of
runnable tasks in the system).


Shouldn't an unprivileged process be rate limited somehow to avoid
flooding the machine with interrupts?  We restrict nonroot users from
setting the RTC interrupt rate higher than 64Hz for a similar reason
(granted, this limit dates back to the 486 days and should probably be
increased to 1024 Hz).

Root and SCHED_FIFO tasks could be exempt from rate limiting, to avoid
the need to introduce a new rlimit which would take years for
userspace to catch up to.

Lee
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] crypto: Use padlock.ko only as a module

2007-04-28 Thread Randy Dunlap
On Sat, 28 Apr 2007 17:44:42 +0100 Simon Arlott wrote:

> The padlock.ko module is completely useless when compiled in 
> because it can't do anything and gets run too early to output 
> anything useful:
> 
> [6.052000] padlock: No VIA PadLock drivers have been loaded.
> [6.052000] padlock: Using VIA PadLock ACE for AES algorithm.
> [6.052000] padlock: Using VIA PadLock ACE for SHA1/SHA256 algorithms.
> 
> Signed-off-by: Simon Arlott <[EMAIL PROTECTED]>
> Cc: Herbert Xu <[EMAIL PROTECTED]>
> ---
>  drivers/crypto/Makefile |4 +++-
>  1 files changed, 3 insertions(+), 1 deletions(-)
> 
> diff --git a/drivers/crypto/Makefile b/drivers/crypto/Makefile
> index 6059cf8..f0f7a73 100644
> --- a/drivers/crypto/Makefile
> +++ b/drivers/crypto/Makefile
> @@ -1,4 +1,6 @@
> -obj-$(CONFIG_CRYPTO_DEV_PADLOCK) += padlock.o
> +ifeq ($(CONFIG_CRYPTO_DEV_PADLOCK),m)
> +obj-m += padlock.o
> +endif
>  obj-$(CONFIG_CRYPTO_DEV_PADLOCK_AES) += padlock-aes.o
>  obj-$(CONFIG_CRYPTO_DEV_PADLOCK_SHA) += padlock-sha.o
>  obj-$(CONFIG_CRYPTO_DEV_GEODE) += geode-aes.o
> -- 

I think that we prefer to enforce config symbols in Kconfig files,
not in Makefiles.  E.g.,

---
 drivers/crypto/Kconfig |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

--- linux-2621-pv.orig/drivers/crypto/Kconfig
+++ linux-2621-pv/drivers/crypto/Kconfig
@@ -2,7 +2,7 @@ menu "Hardware crypto devices"
 
 config CRYPTO_DEV_PADLOCK
tristate "Support for VIA PadLock ACE"
-   depends on X86_32
+   depends on X86_32 && m
select CRYPTO_ALGAPI
default m
help


---
~Randy
*** Remember to use Documentation/SubmitChecklist when testing your code ***
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: Linux 2.6.21

2007-04-28 Thread Linus Torvalds


On Sat, 28 Apr 2007, Adrian Bunk wrote:
> 
> We are already quite good at ignoring bug reports that come through 
> linux-kernel, and it's an _advantage_ of the kernel Bugzilla to see more 
> than 1600 open bugs because this tells how bad we are at handling bugs.

No, it just shows that bugzilla doesn't matter for most of the kernel.

Don't say that "bugzilla tells how bad we are at handling bugs". It tells 
how bad *bugzilla* is for handling bugs, nothing more.

Trying to play politics by pointing to bugzilla is pointless. Bugzilla is 
used for a few subsystems (ACPI seems to use it actively, for example), 
but I doubt most developers use it.

Would be be good to have a better bug-tracking setup? Yes. But I think it 
takes man-power, and it would take something *fundamentally* better than 
bugzilla.

Maybe the new "http://kernelnewbies.org/known_regressions; thing will 
evolve to something worth tracking. Right now, bugzilla isn't it (although 
it can be a useful tracking place for individual bugs, *once* you've found 
and gotten the right developer involved - but that's a huge step that 
bugzilla generally does *not* do for us).

Linus
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: Linux 2.6.21

2007-04-28 Thread Adrian Bunk
On Sun, Apr 29, 2007 at 08:11:30AM +1000, Neil Brown wrote:
> On Saturday April 28, [EMAIL PROTECTED] wrote:
>...
> > As Andrew has pointed out before though - even though he forwards
> > the bugs, nobody does anything with it. The sad truth seems to be
> > that people have very little interest in fixing bugs when they are
> > reported - it's not sexy, I guess.
> 
> Not sexy, and also not at all easy.   A lot of the interesting bugs
> seem to be subtle interactions between separate parts of the kernel -
> one part making an assumption or exhibiting a behaviour that the other
> part didn't expect.  And we all know that writing bug^Wcode is easier
> than removing bugs.  I can spend hour and hours reading through code
> trying to get the big picture, and end up finding a one-line change
> that then needs documenting, testing and external review.  It's not
> easy.
> 
> > I'm still unconvinced the users or the tool are the problem, but if it
> > makes you happier, we can do that.
> 
> No, they aren't the problem.  Bugs are the problem.  But they might be
> a more effective part of the solution.
> 
> My perception of the kernel bugzilla is that visibility is very low.
> 
> I think there is value in weekly reminders, and I wouldn't mind seeing
> a weekly Email on linux-kernel with something like a list of open bugs
> that have not seen any activity in between 1 and 2 weeks.  It might
> get someone out-of-area interested, and might be noticed by someone
> who thinks they are in-area and get them wondering why they didn't
> find out when the bug was first reported.

The 100 kB email limit has to be lifted for this... 

More seriously, there are > 1000 open bugs in the kernel Bugzilla 
without any activity during the last 2 weeks.

The problem is usually either "Not sexy, and also not at all easy." or
"no maintainer".

Technology can assist, but there are non-technical problems you can't 
solve through technology.

> NeilBrown

cu
Adrian

-- 

   "Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
   "Only a promise," Lao Er said.
   Pearl S. Buck - Dragon Seed

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: random thoughts on DEPRECATED and OBSOLETE

2007-04-28 Thread Stefan Richter
Robert P. J. Day wrote:
> On Sat, 28 Apr 2007, Stefan Richter wrote:
>> And that benefit is...? :-)
...
> if you're not convinced, there's nothing else i can think of to say
> that will persuade you.

It didn't come across this way, sorry, but I didn't ask a priori to be
persuaded, but rather because I thought your argument (at the wiki site)
could be enhanced by pointing out the concrete applications of the
facility.  When I visited the page, it only explained how the facility
works, not what the end-use is.

[...]
>> But it can be controversial whether a piece of code
>> deserves one of these labels.
> 
> in the first place, that would be *entirely* the decision of the
> maintainer, just as it is now.  but nothing says that starting to tag
> stuff has to affect you in any way.  there should be a top-level
> selection that lets you even *activate* the maturity level settings as
> part of your configuration.

(Although if a certain number of kernel components is inappropriately
labeled, the facility becomes useless of course.)

[...]
>> "maturity" is just like "depends on" with the added feature that UIs
>> are supposed to print the flag onto the screen even if the user did
>> not enable a debug mode of the UI.
>>
>> It's really nothing more.
[...]
> sure, i have no disagreement with that.  (um ... was there something
> there i was supposed to address?  it just sounded like you were
> clarifying what we were talking about.)

You said "it's not just presentational markup", I said "it is". :-)

[deprecated and obsolete exclusive?]
>> DEPRECATED = "I don't want you to build or run this if you can
>> possibly avoid it."
>>
>> OBSOLETE = "There is other stuff which does more or less the same,
>> and this here could go away in the future."
> 
> nope.  we've been down this road before, and the consensus was that
> something could be one of deprecated or obsolete, but not both.  i can
> re-post those definitions if you want, or you could read about them
> here:
> 
> http://kerneltrap.org/node/7593

I see a discussion on OBSOLETE vs. BROKEN there, which even ended in a
consensus, but I do not see an explicit discussion on OBSOLETE vs.
DEPRECATED.  The only definition of DEPRECATED I see there is yours, and
as it is worded, it is largely overlapping with the definition of
OBSOLETE (which, as it is laid down in that thread, is mostly yours too)
--- but it is not actually conflicting with it.

Note, another classification system can be found in
Documentation/ABI/README.  That one also features the category
"obsolete", but does not include a category "deprecated".  This is
beneficial because it doesn't leave room for disagreeing interpretations
like ours, nor for any overlap in the definitions like in those at the
end of the thread you referenced.
-- 
Stefan Richter
-=-=-=== -=-- ===--
http://arcgraph.de/sr/
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: Linux-2.6.21 hangs during post boot initialization phase

2007-04-28 Thread Neil Horman
On Sat, Apr 28, 2007 at 09:50:00AM +1000, Peter Williams wrote:
> Neil Horman wrote:
> >On Sat, Apr 28, 2007 at 12:28:28AM +1000, Peter Williams wrote:
> >>Neil Horman wrote:
> >>>On Fri, Apr 27, 2007 at 04:05:11PM +1000, Peter Williams wrote:
> >
> >Damn, This is what happens when I try to do things too quickly.  I missed 
> >one
> >spot in my last patch where I replaced skb with rx_skb.  Its not critical, 
> >but
> >it should improve sis900 performance by quite a bit.  This applies on top 
> >of the
> >last two patches.  Sorry about that.
> >
> >Thanks & Regards
> >Neil
> >
> >Signed-off-by: Neil Horman <[EMAIL PROTECTED]>
> >
> >
> > sis900.c |2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > 
> >diff --git a/drivers/net/sis900.c b/drivers/net/sis900.c
> >index 7e44939..db59dce 100644
> >--- a/drivers/net/sis900.c
> >+++ b/drivers/net/sis900.c
> >@@ -1790,7 +1790,7 @@ static int sis900_rx(struct net_device *net_dev)
> > /* give the socket buffer to upper layers */
> > rx_skb = sis_priv->rx_skbuff[entry];
> > skb_put(rx_skb, rx_size);
> >-skb->protocol = eth_type_trans(rx_skb, net_dev);
> >+rx_skb->protocol = eth_type_trans(rx_skb, net_dev);
> > netif_rx(rx_skb);
> > 
> > /* some network statistics */
> 
> My system also boots OK after I add this patch.  Can't tell whether it's 
> improved the performance or not.

I've had other report of performance degradation (frames thrown out for not
having a valid protocol assigned to them).   This patch may not improve your
performance per se, but it will certainly not hurt, and its correct (for the
same reason that using a separate skb pointer is correct in all the other lines
in this clause.

Thanks, and sorry again for all the headache.
Neil
 
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: PANIC: 2.6.21-rc7-mm2, Kernel access of bad area, sig: 11

2007-04-28 Thread William Heimbigner

On Sat, 28 Apr 2007, Andrew Morton wrote:


On Sat, 28 Apr 2007 21:40:19 + (GMT) William Heimbigner <[EMAIL PROTECTED]> 
wrote:


This bug occurs in linux-2.6.21-rc7-mm2, and does not occur in 2.6.21-rc7
ARCH is powerpc

dmesg output, captured via netconsole:
[0.00] Using PowerMac machine description
[0.00] Total memory = 128MB; using 256kB for hash table (at c7fc)
[0.00] Linux version 2.6.21-rc7-mm2 ([EMAIL PROTECTED]) (gcc version 
4.1.1 (Gentoo 4.1.1-r3)) #3 SMP PREEMPT Sat Apr 28 14:29:54 CDT 2007
[0.00] Found UniNorth memory controller & host bridge @ 0xf800 
revision: 0xc0
[0.00] Mapped at 0xfdfc
[0.00] Found a Pangea mac-io controller, rev: 0, mapped at 0xfdf4
[0.00] PowerMac motherboard: iMac "Flower Power"


It ran OK on my G5.  Can you send the config please?


grep -v "is not set" .config:
#
# Automatically generated make config: don't edit
# Linux kernel version: 2.6.21-rc7-mm2
# Sat Apr 28 14:04:08 2007
#
CONFIG_PPC_PM_NEEDS_RTC_LIB=y
CONFIG_PPC32=y
CONFIG_PPC_MERGE=y
CONFIG_MMU=y
CONFIG_GENERIC_HARDIRQS=y
CONFIG_IRQ_PER_CPU=y
CONFIG_RWSEM_XCHGADD_ALGORITHM=y
CONFIG_ARCH_HAS_ILOG2_U32=y
CONFIG_GENERIC_HWEIGHT=y
CONFIG_GENERIC_CALIBRATE_DELAY=y
CONFIG_GENERIC_FIND_NEXT_BIT=y
CONFIG_PPC=y
CONFIG_EARLY_PRINTK=y
CONFIG_GENERIC_NVRAM=y
CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
CONFIG_ARCH_MAY_HAVE_PC_FDC=y
CONFIG_PPC_OF=y
CONFIG_PPC_UDBG_16550=y
CONFIG_GENERIC_TBSYNC=y
CONFIG_AUDIT_ARCH=y
CONFIG_GENERIC_BUG=y

#
# Processor support
#
CONFIG_CLASSIC32=y
CONFIG_6xx=y
CONFIG_PPC_FPU=y
CONFIG_ALTIVEC=y
CONFIG_PPC_STD_MMU=y
CONFIG_PPC_STD_MMU_32=y
CONFIG_SMP=y
CONFIG_NR_CPUS=2
CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"

#
# Code maturity level options
#
CONFIG_EXPERIMENTAL=y
CONFIG_LOCK_KERNEL=y
CONFIG_INIT_ENV_ARG_LIMIT=32

#
# General setup
#
CONFIG_LOCALVERSION=""
CONFIG_SWAP=y
CONFIG_SWAP_PREFETCH=y
CONFIG_SYSVIPC=y
CONFIG_IPC_NS=y
CONFIG_SYSVIPC_SYSCTL=y
CONFIG_POSIX_MQUEUE=y
CONFIG_BSD_PROCESS_ACCT=y
CONFIG_BSD_PROCESS_ACCT_V3=y
CONFIG_AUDIT=y
CONFIG_AUDITSYSCALL=y
CONFIG_IKCONFIG=y
CONFIG_IKCONFIG_PROC=y
CONFIG_SYSFS_DEPRECATED=y
CONFIG_BLK_DEV_INITRD=y
CONFIG_INITRAMFS_SOURCE=""
CONFIG_SYSCTL=y
CONFIG_EMBEDDED=y
CONFIG_SYSCTL_SYSCALL=y
CONFIG_KALLSYMS=y
CONFIG_HOTPLUG=y
CONFIG_PRINTK=y
CONFIG_BUG=y
CONFIG_ELF_CORE=y
CONFIG_BASE_FULL=y
CONFIG_FUTEX=y
CONFIG_ANON_INODES=y
CONFIG_EPOLL=y
CONFIG_SIGNALFD=y
CONFIG_TIMERFD=y
CONFIG_EVENTFD=y
CONFIG_SHMEM=y
CONFIG_VM_EVENT_COUNTERS=y
CONFIG_PROC_SMAPS=y
CONFIG_PROC_CLEAR_REFS=y
CONFIG_PROC_PAGEMAP=y
CONFIG_PROC_KPAGEMAP=y
CONFIG_SLUB=y
CONFIG_RT_MUTEXES=y
CONFIG_BASE_SMALL=0

#
# Loadable module support
#
CONFIG_MODULES=y
CONFIG_MODULE_UNLOAD=y
CONFIG_MODULE_FORCE_UNLOAD=y
CONFIG_MODVERSIONS=y
CONFIG_MODULE_SRCVERSION_ALL=y
CONFIG_KMOD=y
CONFIG_STOP_MACHINE=y

#
# Block layer
#
CONFIG_BLOCK=y

#
# IO Schedulers
#
CONFIG_IOSCHED_NOOP=y
CONFIG_IOSCHED_AS=y
CONFIG_IOSCHED_DEADLINE=y
CONFIG_IOSCHED_CFQ=y
CONFIG_DEFAULT_CFQ=y
CONFIG_DEFAULT_IOSCHED="cfq"

#
# Platform support
#
CONFIG_PPC_MULTIPLATFORM=y
CONFIG_PPC_CHRP=y
CONFIG_PPC_PMAC=y
CONFIG_PPC_NATIVE=y
CONFIG_MPIC=y
CONFIG_PPC_I8259=y
CONFIG_PPC_RTAS=y
CONFIG_RTAS_PROC=y
CONFIG_PPC_MPC106=y

#
# CPU Frequency support
#
CONFIG_CPU_FREQ=y
CONFIG_CPU_FREQ_TABLE=y
CONFIG_CPU_FREQ_STAT=y
CONFIG_CPU_FREQ_STAT_DETAILS=y
CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
CONFIG_CPU_FREQ_GOV_POWERSAVE=y
CONFIG_CPU_FREQ_GOV_USERSPACE=y
CONFIG_CPU_FREQ_GOV_ONDEMAND=y
CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y
CONFIG_CPU_FREQ_PMAC=y
CONFIG_TAU=y

#
# Kernel options
#
CONFIG_HZ_1000=y
CONFIG_HZ=1000
CONFIG_PREEMPT=y
CONFIG_PREEMPT_BKL=y
CONFIG_BINFMT_ELF=y
CONFIG_HOTPLUG_CPU=y
CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
CONFIG_KEXEC=y
CONFIG_ARCH_FLATMEM_ENABLE=y
CONFIG_ARCH_POPULATES_NODE_MAP=y
CONFIG_SELECT_MEMORY_MODEL=y
CONFIG_FLATMEM_MANUAL=y
CONFIG_FLATMEM=y
CONFIG_FLAT_NODE_MEM_MAP=y
CONFIG_SPLIT_PTLOCK_CPUS=4
CONFIG_RESOURCES_64BIT=y
CONFIG_ZONE_DMA_FLAG=1
CONFIG_ADAPTIVE_READAHEAD=y
CONFIG_DEBUG_READAHEAD=y
CONFIG_PROC_DEVICETREE=y
CONFIG_PM=y
CONFIG_PM_DEBUG=y
CONFIG_PM_SYSFS_DEPRECATED=y
CONFIG_SECCOMP=y
CONFIG_ISA_DMA_API=y

#
# Bus options
#
CONFIG_ISA=y
CONFIG_ZONE_DMA=y
CONFIG_GENERIC_ISA_DMA=y
CONFIG_PPC_INDIRECT_PCI=y
CONFIG_PCI=y
CONFIG_PCI_DOMAINS=y
CONFIG_PCIEPORTBUS=y
CONFIG_PCCARD=y
CONFIG_PCMCIA=y
CONFIG_PCMCIA_LOAD_CIS=y
CONFIG_CARDBUS=y

#
# PC-card bridges
#
CONFIG_PCMCIA_PROBE=y

#
# Advanced setup
#

#
# Default settings for advanced configuration options are used
#
CONFIG_HIGHMEM_START=0xfe00
CONFIG_LOWMEM_SIZE=0x3000
CONFIG_KERNEL_START=0xc000
CONFIG_TASK_SIZE=0x8000
CONFIG_BOOT_LOAD=0x0080

#
# Networking
#
CONFIG_NET=y

#
# Networking options
#
CONFIG_PACKET=y
CONFIG_UNIX=y
CONFIG_XFRM=y
CONFIG_XFRM_USER=y
CONFIG_NET_KEY=y
CONFIG_INET=y
CONFIG_IP_MULTICAST=y
CONFIG_IP_FIB_HASH=y
CONFIG_SYN_COOKIES=y
CONFIG_INET_AH=y
CONFIG_INET_ESP=y
CONFIG_INET_TUNNEL=m

Re: Linux 2.6.21

2007-04-28 Thread Neil Brown
On Saturday April 28, [EMAIL PROTECTED] wrote:
> 
> Yes, human involvement from someone with half a brain would be better.
> Andrew does a lot of that. Not a particularly good use of talent really.
> but still.

I think more than half a brain is needed to do this well.  You need a
reasonable understanding of how all the bits of the kernel work
together so that you have a good chance of sending the bug in the right
direction.  You need a good understanding of the kernel community and
various sub communities so that you know who might be both able and
willing to deal with the bug.  And it wouldn't hurt to have a good
over-view of the current 'hot' areas of the kernel so you know if it
is really worth suggesting "try with the latest -mm" or not.
And you need good people skills.

So I think you really need a lot of up-to-date knowledge to do this
well.  Because of Andrew's position as a funnel, he has a lot of that
knowledge.  It would be really nice if he had some help though.  And I
really think that would mean finding someone in the community who
would rather be coding (and currently are) and convincing them that
there is a higher calling for them.  Finding someone out side or on
the edge of the community is less likely to be effective.

> 
> As Andrew has pointed out before though - even though he forwards
> the bugs, nobody does anything with it. The sad truth seems to be
> that people have very little interest in fixing bugs when they are
> reported - it's not sexy, I guess.

Not sexy, and also not at all easy.   A lot of the interesting bugs
seem to be subtle interactions between separate parts of the kernel -
one part making an assumption or exhibiting a behaviour that the other
part didn't expect.  And we all know that writing bug^Wcode is easier
than removing bugs.  I can spend hour and hours reading through code
trying to get the big picture, and end up finding a one-line change
that then needs documenting, testing and external review.  It's not
easy.

> I'm still unconvinced the users or the tool are the problem, but if it
> makes you happier, we can do that.

No, they aren't the problem.  Bugs are the problem.  But they might be
a more effective part of the solution.

My perception of the kernel bugzilla is that visibility is very low.

I think there is value in weekly reminders, and I wouldn't mind seeing
a weekly Email on linux-kernel with something like a list of open bugs
that have not seen any activity in between 1 and 2 weeks.  It might
get someone out-of-area interested, and might be noticed by someone
who thinks they are in-area and get them wondering why they didn't
find out when the bug was first reported.

NeilBrown
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: High Resolution Timer DOS

2007-04-28 Thread Thomas Gleixner
On Sat, 2007-04-28 at 23:53 +0200, matthieu castet wrote:
> Hi,
> 
> some programs need to do some short of busyloop. It was often 
> implemented as :
> 
> while (1) {
>   if (can_do_stuff) {
>   do_stuff();
>   }
>   else
>   //sleep a very short of time
>   usleep(1);
> }
> 
> usleep(1) or equivalent where used instead of sched_yield, because of 
> some priority issue. IIRC doing sched_yield, make the process appears 
> like an interactive process, so it has better priority and get call more 
> often.
> 
> But now if high res timer are enabled, these programs while cause 
> something like a DOS : the context switch per second will be bigger than 
> 500 000 and the cpu usage will be very high.

Well, it is not really a DoS. The rescheduling of the process is limited
by the scheduler and the available CPU time (depending on the number of
runnable tasks in the system).

>From the spec:

Implementations may place limitations on the granularity of timer
values. For each interval timer, if the requested timer value requires a
finer granularity than the implementation supports, the actual timer
value shall be rounded up to the next supported value.

The !HIGHRES enabled kernel rounds this up to the HZ interval, the
HIGHRES enabled kernel grants the request for this short sleep.

The program gets what it asked for: a stupid sleep value.

tglx


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: 2.6.21-rc7-mm2 crash: Eeek! page_mapcount(page) went negative! (-1)

2007-04-28 Thread Hugh Dickins
On Sat, 28 Apr 2007, Andrew Morton wrote:
> 
> It seems wildly screwed up that we have a PageReserved() page with a pfn of
> zero (!) which claims to be in a reiserfs mapping, only it isn't attached
> to a reiserfs file.  How the heck did that happen?

It's "simply" that it somehow got a spurious page table entry 0001.
Great that it's so reproducible, I take that to mean this one is not
bad RAM.  Your request for a bisection is just what we want, thanks.

Hugh
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: PANIC: 2.6.21-rc7-mm2, Kernel access of bad area, sig: 11

2007-04-28 Thread Andrew Morton
On Sat, 28 Apr 2007 21:40:19 + (GMT) William Heimbigner <[EMAIL PROTECTED]> 
wrote:

> This bug occurs in linux-2.6.21-rc7-mm2, and does not occur in 2.6.21-rc7
> ARCH is powerpc
> 
> dmesg output, captured via netconsole:
> [0.00] Using PowerMac machine description
> [0.00] Total memory = 128MB; using 256kB for hash table (at c7fc)
> [0.00] Linux version 2.6.21-rc7-mm2 ([EMAIL PROTECTED]) (gcc version 
> 4.1.1 (Gentoo 4.1.1-r3)) #3 SMP PREEMPT Sat Apr 28 14:29:54 CDT 2007
> [0.00] Found UniNorth memory controller & host bridge @ 0xf800 
> revision: 0xc0
> [0.00] Mapped at 0xfdfc
> [0.00] Found a Pangea mac-io controller, rev: 0, mapped at 0xfdf4
> [0.00] PowerMac motherboard: iMac "Flower Power"

It ran OK on my G5.  Can you send the config please?

> ...
> [   27.030444] input: PMU as /class/input/input4
> [   27.052675] ReiserFS: hda4: found reiserfs format "3.6" with standard 
> journal
> [   27.058960] ReiserFS: hda4: using ordered data mode
> [   27.078108] ReiserFS: hda4: journal params: device hda4, size 8192, 
> journal first block 18, max trans len 1024, max batch 900, max commit age 30, 
> max trans age 30
> [   27.099024] ReiserFS: hda4: checking transaction log (hda4)
> [   27.195147] ReiserFS: hda4: Using r5 hash to sort names
> [   27.201477] VFS: Mounted root (reiserfs filesystem) readonly.
> [   27.207715] Freeing unused kernel memory: 248k init
> [  156.166766] Oops: Kernel access of bad area, sig: 11 [#1]
> [  156.167014] PREEMPT SMP NR_CPUS=2 DEBUG_PAGEALLOC PowerMac
> [  156.167267] Modules linked in: nfsd exportfs pmac_zilog serial_core 
> ohci1394 ieee1394 uninorth_agp
> [  156.167711] NIP: c0068ce4 LR: c0068cdc CTR: 
> [  156.167892] REGS: c0583a40 TRAP: 0300   Not tainted  (2.6.21-rc7-mm2)
> [  156.168118] MSR: 1032   CR: 42202022  XER: 
> [  156.168467] DAR: , DSISR: 4200
> [  156.168617] TASK = c0550260[0] 'swapper' THREAD: c0582000 CPU: 0
> [  156.168840] GPR00:  c0583af0 c0550260 0783 c059bc88 0001 
> c0488ec0 c059bc80 
> [  156.169272] GPR08: c0460713 c0488e77  c0488b70 3da3  
> 0023f96c c059 
> [  156.169705] GPR16: c059 0023f964 c059  1032  
> c0583eb0 c059 
> [  156.170145] GPR24: c0583b18    c0583b28 c000a1e4 
> c0583b2c c059bc80 
> [  156.170594] NIP [c0068ce4] kallsyms_lookup+0x64/0xa4
> [  156.170806] LR [c0068cdc] kallsyms_lookup+0x5c/0xa4
> [  156.170997] Call Trace:
> [  156.171093] [c0583af0] [c0068cb4] kallsyms_lookup+0x34/0xa4 (unreliable)
> [  156.171384] --- Exception: c0583bb0 at 0xc0583ba0
> [  156.171578] LR = draw_byte+0x34/0x1d0
> [  156.171723] [c0583b10] [c002ebd0] xmon_show_stack+0x2b8/0x330 (unreliable)
> [  156.172017] [c0583c10] [c003053c] cmds+0xa20/0x1600
> [  156.172235] [c0583ca0] [c0031448] xmon_core+0x32c/0x734
> [  156.172452] [c0583d60] [c00319fc] xmon+0x2c/0x68
> [  156.172647] [c0583e20] [c0031b40] xmon_irq+0x50/0x6c
> [  156.172856] [c0583e40] [c0073828] handle_IRQ_event+0x5c/0xb0
> [  156.173090] [c0583e60] [c00755dc] handle_fasteoi_irq+0xac/0x174
> [  156.17] [c0583e80] [c0006be4] do_IRQ+0xec/0x130
> [  156.179644] [c0583ea0] [c0014fe8] ret_from_except+0x0/0x14
> [  156.185827] --- Exception: 501 at cpu_idle here>+0xfc/0x1dc
> LR = cpu_idle+0xfc/0x1dc
> [c0583f60] [c000a24c] cpu_idle+0x164/0x1dc (unreliable)
> [c0583f80] [c0003cc4] rest_init+0x74/0x88
> [c0583fa0] [c050fb68] start_kernel+0x310/0x394
> [c0583ff0] [37b4] 0x37b4
> 
> This occurs after pressing the programmer switch to generate an NMI.

Can you expand on this?  Do you mean that hitting the NMI switch is what
caused this crash?


Does a G5 have a programmer switch?  If so, how does this programmer
switch it?

If you compiled with CONFIG_DEBUG_INFO could you please do

gdb vmlinux
(gdb) l *0xc0068ce4



Patches which touch kallsyms.c in -mm are:

extend-print_symbol-capability
simplify-module_get_kallsym-by-dropping-length-arg
simplify-kallsyms_lookup
fix-race-between-rmmod-and-cat-proc-kallsyms
fix-race-between-cat-proc-wchan-and-rmmod-et-al
fix-race-between-cat-proc-slab_allocators-and-rmmod
kallsyms-cleanup-use-seq_release_private-where-appropriate



-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


bug in RLIMIT_SIGPENDING

2007-04-28 Thread Miguel Freitas

summary: there seems to be a bug in RLIMIT_SIGPENDING accounting that
can cause it to go negative. associated with this fact, the given
process may get stuck forever trying to enter a 'clone' syscall.

long version:

- several people have experienced this problem of Xorg hanging forever
(100% cpu usage) trying to enter the 'clone' syscall to execute
xkbcomp.

- the syscall is aborted with ERESTARTNOINTR because there is a
SIGALRM signal pending. status shows:

SigQ:   1/18446744073709551615
SigPnd: 
ShdPnd: 2000
SigBlk: 
SigIgn: 00301000
SigCgt: 61c06ecb

note the weird SigQ value, is 64 bits' -1 for RLIMIT_SIGPENDING.

- the signal handler is executed (as confirmed under gdb).

- kernel will then force reentering the syscall by means of the
following code in handle_signal():

case -ERESTARTNOINTR:
regs->rax = regs->orig_rax;
regs->rip -= 2;
break;

- this effectively puts user space in a kind of spinlock that never ends.

- the code that sets signal handler is quoted here from Xorg gitweb:

1529 #define SMART_SCHEDULE_SIGNAL   SIGALRM
(...)
1588 bzero ((char *) , sizeof(struct sigaction));
1589
1590 /* Set up the timer signal function */
1591 act.sa_handler = SmartScheduleTimer;
1592 sigemptyset (_mask);
1593 sigaddset (_mask, SMART_SCHEDULE_SIGNAL);
1594 if (sigaction (SMART_SCHEDULE_SIGNAL, , 0) < 0)
1595 {
1596 perror ("sigaction for smart scheduler");
1597 return FALSE;
1598 }

- the code that sets the timer is quoted here from Xorg gitweb:

1548 Bool
1549 SmartScheduleStartTimer (void)
1550 {
1551 #ifdef SMART_SCHEDULE_POSSIBLE
1552 struct itimervaltimer;
1553
1554 SmartScheduleTimerStopped = FALSE;
1555 timer.it_interval.tv_sec = 0;
1556 timer.it_interval.tv_usec = SmartScheduleInterval * 1000;
1557 timer.it_value.tv_sec = 0;
1558 timer.it_value.tv_usec = SmartScheduleInterval * 1000;
1559 return setitimer (ITIMER_REAL, , 0) >= 0;
1560 #endif
1561 return FALSE;
1562 }

- having this negative rlimit may cause problem to the
__sigqueue_alloc() kernel function. however, as far as i can see, this
would possibly prevent new signals from being enqueued - not existing
ones from being dequeued/cleared/whatever.

- bugzilla entry for the complete investigation can be seen here:

https://bugs.freedesktop.org/show_bug.cgi?id=10525

thanks,

Miguel
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [ext3][kernels >= 2.6.20.7 at least] KDE going comatose when FS is under heavy write load (massive starvation)

2007-04-28 Thread hui
On Sat, Apr 28, 2007 at 07:37:17AM +0200, Mikulas Patocka wrote:
> SpadFS doesn't write to unallocated parts like log filesystems (LFS) or 
> phase tree filesystems (TUX2); it writes inside normal used structures, 
> but it marks each structure with generation tags --- when it updates 
> global table of tags, it atomically makes several structures valid. I 
> don't know about this idea being used elsewhere.

So how is this generation structure organized ? paper ?

bill

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH] i386: introduce voyager smp_ops, fix voyager build

2007-04-28 Thread Eric W. Biederman
Jeremy Fitzhardinge <[EMAIL PROTECTED]> writes:

> This adds an smp_ops for voyager, and hooks things up appropriately.
> This is the first baby-step to making subarch runtime switchable.


Unless I have missed something early_gdt_descr still needs to be updated. 

Eric
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


High Resolution Timer DOS

2007-04-28 Thread matthieu castet

Hi,

some programs need to do some short of busyloop. It was often 
implemented as :


while (1) {
if (can_do_stuff) {
do_stuff();
}
else
//sleep a very short of time
usleep(1);
}

usleep(1) or equivalent where used instead of sched_yield, because of 
some priority issue. IIRC doing sched_yield, make the process appears 
like an interactive process, so it has better priority and get call more 
often.


But now if high res timer are enabled, these programs while cause 
something like a DOS : the context switch per second will be bigger than 
500 000 and the cpu usage will be very high.



I don't know if such problem are already know, but I believe a warning 
about such issues should be in the Kconfig description.



Matthieu
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


irks with bugzilla (was Re: Linux 2.6.21)

2007-04-28 Thread Stefan Richter
Russell King wrote:
> On Sat, Apr 28, 2007 at 09:53:20PM +0200, Adrian Bunk wrote:
>> We are already quite good at ignoring bug reports that come through 
>> linux-kernel, and it's an _advantage_ of the kernel Bugzilla to see more 
>> than 1600 open bugs because this tells how bad we are at handling bugs.
>> How many thousand bug reports have been ignored during the same time on 
>> linux-kernel?
> 
> However, look at this bug:
> 
>   http://bugme.osdl.org/show_bug.cgi?id=7760
> 
> It's outside my knowledge to be able to fix for various reasons:
[...]

http://bugzilla.kernel.org/faq.cgi says, although it doesn't make a lot
of sense:

"Q. If a bug has an owner does that mean they are working on it?

A. No. If it is not in the ASSIGNED state then no one is working
on it. The owner defaults to the subsytem maintainer. However,
anyone who wants to submit a patch or add more info to a bug can
do so. If the bug is reassigned to someone then the owner field
will reflect that change."

So the "owner" field is bogus per default.  It would be better if the
bugzilla admins used only meta-addresses instead of a person's address
for any automatically filled-in "owner" field, unless a person
specifically wants to assume this automatic owner role.

I for example am not automatic owner of IEEE 1394 bugs;
[EMAIL PROTECTED] is.  And I am watching this pseudo
owner.

So in fact, the "owner" field should be replaced by
  - a mail exploder for each component which can be watched by
interested people,
  - an "assignee" field which is filled in when a bug is assigned to a
person.

Now that I am at it, another quote from http://bugzilla.kernel.org/faq.cgi :

"Q. What does a subsystem maintainer do?

A. He or She will track new bugs and assign them to people or
reject it for various reasons. They periodically check to make
sure things are getting worked on and review fixes to make sure
they are well written."

A maintainer in the project called linux kernel will almost never assign
bugs to people (besides to himself).  He could if he employed or
otherwise supervised people to assign bugs to.

This especially applies to so-called "subsystem maintainers in kernel
tracker", which are not what many people think "subsystem maintainers" are:

"Q. Why are the subsystem maintainers in kernel tracker
sometimes different than the person listed in the MAINTAINER
file?

A. The subsystem maintainers in kernel tracker are volunteers to
help track bugs in an area they are interested in. Sometimes
they are the same person as on kernel.org sometimes they are
not. There are still some categories with no maintainers so more
volunteers are needed."

Another quibble:  This FAQ I'm quoting can be reached from the cover
page of bugzilla.kernel.org, i.e. from http://bugzilla.kernel.org/.
However, none of the other web pages of this site link to
http://bugzilla.kernel.org/.  Same for the bugme-admin contact.

Because I find bugzilla.kernel.org quite useful for myself, I filed
these complaints of mine under
http://bugzilla.kernel.org/show_bug.cgi?id=8396
http://bugzilla.kernel.org/show_bug.cgi?id=8397
http://bugzilla.kernel.org/show_bug.cgi?id=8394
in hope that they are taken into consideration by those who maintain the
site.
-- 
Stefan Richter
-=-=-=== -=-- ===--
http://arcgraph.de/sr/
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


PANIC: 2.6.21-rc7-mm2, Kernel access of bad area, sig: 11

2007-04-28 Thread William Heimbigner

This bug occurs in linux-2.6.21-rc7-mm2, and does not occur in 2.6.21-rc7
ARCH is powerpc

dmesg output, captured via netconsole:
[0.00] Using PowerMac machine description
[0.00] Total memory = 128MB; using 256kB for hash table (at c7fc)
[0.00] Linux version 2.6.21-rc7-mm2 ([EMAIL PROTECTED]) (gcc version 
4.1.1 (Gentoo 4.1.1-r3)) #3 SMP PREEMPT Sat Apr 28 14:29:54 CDT 2007
[0.00] Found UniNorth memory controller & host bridge @ 0xf800 
revision: 0xc0
[0.00] Mapped at 0xfdfc
[0.00] Found a Pangea mac-io controller, rev: 0, mapped at 0xfdf4
[0.00] PowerMac motherboard: iMac "Flower Power"
[0.00] Found UniNorth PCI host bridge at 0xf000. Firmware bus 
number: 0->0
[0.00] Found UniNorth PCI host bridge at 0xf200. Firmware bus 
number: 0->0
[0.00] Found UniNorth PCI host bridge at 0xf400. Firmware bus 
number: 0->0
[0.00] via-pmu: Server Mode is enabled
[0.00] PMU driver v2 initialized for Core99, firmware: 0c
[0.00] nvram: Checking bank 0...
[0.00] nvram: gen0=498, gen1=499
[0.00] nvram: Active bank is: 1
[0.00] nvram: OF partition at 0x210
[0.00] nvram: XP partition at 0x
[0.00] nvram: NR partition at 0x
[0.00] Zone PFN ranges:
[0.00]   DMA 0 ->32768
[0.00]   Normal  32768 ->32768
[0.00] Movable zone start PFN for each node
[0.00] early_node_map[1] active PFN ranges
[0.00] 0:0 ->32768
[0.00] Built 1 zonelists, mobility grouping on.  Total pages: 32512
[0.00] Kernel command line: root=/dev/hda4 ro real_root=/dev/hda4 [EMAIL PROTECTED]/eth0,[EMAIL PROTECTED]/00:11:09:3C:07:C2 
[0.00] netconsole: local port 

[0.00] netconsole: local IP 192.168.0.3
[0.00] netconsole: interface eth0
[0.00] netconsole: remote port 
[0.00] netconsole: remote IP 192.168.0.8
[0.00] netconsole: remote ethernet address 00:11:09:3c:07:c2
[0.00] mpic: Setting up MPIC " MPIC 1   " version 1.2 at 8004, max 
4 CPUs
[0.00] mpic: ISU size: 64, shift: 6, mask: 3f
[0.00] mpic: Initializing for 64 sources
[0.00] PID hash table entries: 512 (order: 9, 2048 bytes)
[0.00] GMT Delta read from XPRAM: 0 minutes, DST: on
[   18.626246] Console: colour dummy device 80x25
[   18.626620] console handover: boot [udbg0] -> real [tty0]
[   18.627059] 
[   18.627073] | Locking API testsuite:
[   18.627083] 

[   18.627098]  | spin |wlock |rlock |mutex | 
wsem | rsem |
[   18.627113]   
--
[   18.627140]  A-A deadlock:failed|failed|  ok  
|failed|failed|failed|
[   18.627204]  A-B-B-A deadlock:failed|failed|  ok  
|failed|failed|failed|
[   18.627265]  A-B-B-C-C-A deadlock:failed|failed|  ok  
|failed|failed|failed|
[   18.627327]  A-B-C-A-B-C deadlock:failed|failed|  ok  
|failed|failed|failed|
[   18.627389]  A-B-B-C-C-D-D-A deadlock:failed|failed|  ok  
|failed|failed|failed|
[   18.627457]  A-B-C-D-B-D-D-A deadlock:failed|failed|  ok  
|failed|failed|failed|
[   18.627524]  A-B-C-D-B-C-D-A deadlock:failed|failed|  ok  
|failed|failed|failed|
[   18.627592] double unlock:  ok  |  ok  |failed|  ok  
|failed|failed|
[   18.627645]   initialize 
held:failed|failed|failed|failed|failed|failed|
[   18.627703]  bad unlock order:  ok  |  ok  |  ok  |  ok  |  
ok  |  ok  |
[   18.627763]   
--
[   18.627785]   recursive read-lock: |  ok  |  
   |failed|
[   18.627825]recursive read-lock #2: |  ok  |  
   |failed|
[   18.627865] mixed read-write-lock: |failed|  
   |failed|
[   18.627911] mixed write-read-lock: |failed|  
   |failed|
[   18.627951]   
--
[   18.627974]  hard-irqs-on + irq-safe-A/12:failed|failed|  ok  |
[   18.628011]  soft-irqs-on + irq-safe-A/12:failed|failed|  ok  |
[   18.628049]  hard-irqs-on + irq-safe-A/21:failed|failed|  ok  |
[   18.628084]  soft-irqs-on + irq-safe-A/21:failed|failed|  ok  |
[   18.628120]sirq-safe-A => hirqs-on/12:failed|failed|  ok  |
[   18.628156]sirq-safe-A => hirqs-on/21:failed|failed|  ok  |
[   18.628192]  hard-safe-A + irqs-on/12:failed|failed|  ok  |
[   18.628229]  soft-safe-A + irqs-on/12:failed|failed|  ok  |
[   18.628266]  hard-safe-A + 

maturity levels: a first pass

2007-04-28 Thread Robert P. J. Day

off the top of my head, this is what the interface might look like.

diff --git a/init/Kconfig b/init/Kconfig
index b170aa1..5c8529c 100644
--- a/init/Kconfig
+++ b/init/Kconfig
@@ -40,6 +40,26 @@ config EXPERIMENTAL
  you say Y here, you will be offered the choice of using features or
  drivers that are currently considered to be in the alpha-test phase.

+config ACTIVATE_MATURITY
+   bool "Activate maturity attribute selection"
+   ---help---
+ This feature gives you the ability to de-select entire sets of
+ kernel features based on how they've been tagged with the
+ "maturity" directive.
+
+ If you choose not to activate this feature, then the Kconfig
+ "maturity" directives have no effect on the configuration.
+
+config MATURITY_DEPRECATED
+   bool "Display DEPRECATED features."
+   depends on ACTIVATE_MATURITY
+   default y
+
+config MATURITY_OBSOLETE
+   bool "Display OBSOLETE features."
+   depends on ACTIVATE_MATURITY
+   default y
+
 config BROKEN
bool


-- 

Robert P. J. Day
Linux Consulting, Training and Annoying Kernel Pedantry
Waterloo, Ontario, CANADA

http://fsdev.net/wiki/index.php?title=Main_Page

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [00/17] Large Blocksize Support V3

2007-04-28 Thread Andrew Morton
On Sat, 28 Apr 2007 12:19:56 -0700 William Lee Irwin III <[EMAIL PROTECTED]> 
wrote:

> I'm skeptical, however, that the contiguity gains will compensate for
> the CPU required to do such with the pcp lists.

It wouldn't surprise me if approximate contiguity is a pretty common case
in the pcp lists.  Recaim isn't very important here: most pages get freed
in truncate and particularly unmap_vmas.  If the allocator is handing out
pages in reasonably contiguous fashion (and it does, and we're talking
about strengthening that) then I'd expect that very often we end up freeing
pages which have a lot of locality too.  So the sort of tricks which you're
discussing might get a pretty good hit rate.

otoh, it's not obvious to me that there's a lot to be gained here.  If we
repeatedly call the buddy allocator freeing contiguous order-0 pages, all
the data structures which are needed to handle those should be in L1 cache
and the buddy itself becomes our point-of-collection, if you see what I
mean.

Dunno.  Profiling should tell?
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: Back to the future.

2007-04-28 Thread Linus Torvalds


On Sat, 28 Apr 2007, Rafael J. Wysocki wrote:
> > 
> > The freezer has *caused* those deadlocks (eg by stopping threads that were 
> > needed for the suspend writeouts to succeed!), not solved them.
> 
> I can't remember anything like this, but I believe you have a specific test
> case in mind.

Ehh.. Why do you thik we _have_ that PF_NOFREEZE thing in the first place?

Rafael, you really don't know what you're talking about, do you?

Just _look_ at them. It's the IO threads etc that shouldn't be frozen, 
exactly *because* they do IO. You claim that kernel threads shouldn't do 
IO, but that's the point: if you cannot do IO when snapshotting to disk, 
here's a damn big clue for you: how do you think that snapshot is going to 
get written?

I *guarantee* you that we've had a lot more problems with threads that 
should *not* have been frozen than with those hypothetical threads that 
you think should have been frozen.

Linus
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Please revert [PATCH] user of the jiffies rounding patch: Slab

2007-04-28 Thread Christoph Lameter
The slab reaper takes global locks. If one makes all cache reapers fire at 
the same time as this patch does then there will be a lot of contention 
that may result lots of interrupt holdoffs since some locks are taken
with interrupts disabled. The vm statistics counters are updated
and will content for global cachelines if this is done.

The approach is fine up to 2 cpus. With 2 cpus we can schedule one cache 
reaper on each cpu each second. So I guess that this was not noticed.

For 16 cpus we are already scheduling 8 parallel cache reapers every 
second. In a 512 cpu system desaster strikes with 256 cache reapers being 
fired off at the same time each second

Git commit 
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=2b2842146cb4105877c2be51d3857ec61ebd4ff9

This is in 2.6.20 / 2.6.21.

I'd suggest to use a staggered per cpu approach instead that runs multiple 
per cpu timers at once. But every batch of these timers must be run at an 
offset from each other. Not at the same time please.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [stable] 2.6.21 known regressions (v2) (for -stable team)

2007-04-28 Thread Krzysztof Halasa
Greg KH <[EMAIL PROTECTED]> writes:

>> Also, assignation of ttyUSB#'s is volatile depending on phase of the
>> moon when booted.
>
> That's always been the case, ever since the 2.2 kernel releases.  Please
> use udev if you want persistent device names for your tty USB devices.

I don't know how udev (or anything) could help here. AFAIK the
converters have no serial numbers and no other means to
differentiate.
-- 
Krzysztof Halasa
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [2.6.21-git2] sk_buff changes break Cisco VPN client

2007-04-28 Thread Alan Cox
On Sat, 28 Apr 2007 22:38:45 +0200
"Alessandro Suardi" <[EMAIL PROTECTED]> wrote:

> skb_set_timestamp I can figure out, but the rest is a bit
>  too hard for me... if anyone has already an idea of how
>  to fix this, I'd be most grateful.
> 
> Cisco VPN client builds and works fine under 2.6.21 vanilla.

Perhaps if cisco included full source they could get their code merged,
in the meantime why not throw it away and use vpnclient like everyone
else ?
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [2.6.21-git2] sk_buff changes break Cisco VPN client

2007-04-28 Thread Alessandro Suardi

On 4/28/07, Roland Dreier <[EMAIL PROTECTED]> wrote:

This is really a problem for Cisco support, not the kernel people.
(And despite my email address I really have no idea who looks after
the VPN client).


It's ok, I know it's "not a kernel issue". I just asked over here
because I saw network code already converted to the new
sk_buff code, and hoped someone could hint to a solution;
I don't think it'd be extremely fruitful to ask Cisco since I'm
already running a patched version of their latest official
Linux release, which hasn't been updated for quite a while.


However I can suggest vpnc (http://www.unix-ag.uni-kl.de/~massar/vpnc/)
as an alternative.  I'm not forced to use Cisco VPN access any more,
but when I tried it, vpnc was tons better than the Cisco product.


vpnc only started supporting hybrid-auth as of very, very
recently; I used it before my company network turned to
hybrid-auth-only several months ago. It's in my sights to go
back to test vpnc-0.4.0 with the hybrid-auth support patch
in the near future. But in the meantime I'll be stuck with
the Cisco VPN client.

After clarifying all this, I'll respectfully ask again whether
anyone has an idea about how to go fixing the five or so
lines of the skb stuff impacted by the kernel changes -
and will of course take no offense if nobody can help, while
happily ignoring those who can only contribute what I do
already know, that is - this isn't a kernel issue.

Thanks again in advance, ciao,

--alessandro

"Did you get married but forgot to get divorced ?"

(Danny and Dusty, 'The Good Old Days')
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


  1   2   3   4   5   6   7   8   9   10   >